有没有办法在单个 mysql 查询中搜索所有字段? [复制]
Posted
技术标签:
【中文标题】有没有办法在单个 mysql 查询中搜索所有字段? [复制]【英文标题】:Is there a way to search all fields in a single mysql query? [duplicate] 【发布时间】:2011-07-28 18:55:57 【问题描述】:可能的重复:mysql query for searching through ALL the fields?MySQL - Search in all fields from every table from a database
我在一个表中有 28 个字段,我想为用户提供的一个选项是搜索其所有字段中的每个条目。 所以不要写这样的东西:
SELECT * FROM table WHERE field1 LIKE testfield OR field2 LIKE testfield OR field3 LIKE testfield
OR field4 LIKE testfield OR ... etc
我想写这样的东西:
SELECT * FROM table WHERE * LIKE testfield;
这不起作用,所以我想知道是否有其他语法或该功能不存在?
【问题讨论】:
同一个问题***.com/questions/3797906/… 链接到另一个类似问题... ***.com/questions/639531/… SpyrosP 所链接的问题在两者中具有更好的答案。 【参考方案1】:SQL 中没有对此类查询的可移植支持。您最好的选择是创建另一个字符串/varchar 列并将其他列连接成一个字符串,然后在其上进行搜索。
SQL Server 确实支持contains keyword:
SELECT Name, Color FROM Production.Product
WHERE CONTAINS((Name, Color), 'Red');
但是,如果您想要便携,最好使用额外的列。
【讨论】:
那将强制进行全表扫描。 ]以上是关于有没有办法在单个 mysql 查询中搜索所有字段? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
有没有办法在 Google Drive API 上列出文件的所有字段?
在mysql中使用带有单个关键字的单个where条件搜索表的所有列