繁体   English   中英

如何在多个表中使用LIKE语法和%WILDCARD%搜索

[英]How to search using the LIKE syntax and % WILDCARD % across multiple tables

您如何在多个表中使用mysql和like / wildcard语法,会如此简单:

(SELECT * FROM `table1` WHERE `name` LIKE '%tom%') AND (SELECT * FROM `table2` WHERE `name` LIKE '%sam%')

没有测试,只是考虑一下。

如果表具有相同的结构,则可以使用UNION

SELECT * FROM `table1` WHERE `name` LIKE '%tom%' UNION SELECT * FROM `table2` WHERE `name` LIKE '%sam%'

使用UNION

(SELECT * FROM `table1` WHERE `name` LIKE '%tom%') UNION
 (SELECT * FROM `table2` WHERE `name` LIKE '%sam%')

实际上,如果您使用UNION,则可能会删除任何重复的行。 如果要保留任何重复项,请使用UNION ALL(例如,如果要对与table1和table2中的%tom%匹配的所有行执行COUNT)。

(SELECT * FROM `table1` WHERE `name` LIKE '%tom%') UNION ALL (SELECT * FROM `table2` WHERE `name` LIKE '%tom%')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM