我是靠谱客的博主 笨笨小鸭子,这篇文章主要介绍mysql like子查询语句_mysql – 使用’LIKE’和SQL子查询的结果,现在分享给大家,希望可以做个参考。

首先,此查询不应该正常工作:

SELECT *

From Customers

WHERE Customers.ContactName = (SELECT FirstName

from Employees as E, orders as O

WHERE LIMIT 1);

因为WHERE LIMIT 1不是正确的SQL.而且,您应该学会使用正确的连接语法.据推测,你打算:

SELECT c.*

From Customers c

WHERE c.ContactName = (SELECT FirstName

FROM Employees as E JOIN

Orders as O

ON . . .

LIMIT 1

);

你可以想象在子查询中添加LIKE而不是=和’%’:

WHERE c.ContactName LIKE (SELECT CONCAT('%', FirstName, '%') . . .

但我会用EXISTS写这个:

SELECT c.*

From Customers c

WHERE EXISTS (SELECT 1

FROM Employees as E JOIN

Orders as O

ON . . .

WHERE c.ContactName LIKE CONCAT('%', FirstName, '%')

);

这与查询完全不同.它做了更合理的事情.它不是比较子查询中的一个随机名称,而是确定子查询中是否存在任何匹配.这似乎是查询更合理的意图.

最后

以上就是笨笨小鸭子最近收集整理的关于mysql like子查询语句_mysql – 使用’LIKE’和SQL子查询的结果的全部内容,更多相关mysql内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(143)

评论列表共有 0 条评论

立即
投稿
返回
顶部