假设表中有像列akey1,bkey2,ckey3和许多喜欢它.
有没有办法搜索共同的价值
SELECT * FROM table WHERE %key% LIKE 'xyz'
除了使用多个AND,OR条件.如果解决方案是DBMS特定的,则无关紧要.
Joe*_*orn 10
缺少动态sql,你必须拼出每个列名.但是你可以得到一些语法快捷方式,只列出常量一次:
SELECT * FROM table WHERE 'xyz' IN (akey1, bkey2, ckey3)
Run Code Online (Sandbox Code Playgroud)
使用动态sql,您仍然必须发出相同的查询...但您至少可以使用字符串工具来构建它,如果您想使用通配符匹配,您可以在information_schema.columns视图中查找它们.但是,这涉及打开并迭代游标或将列数据返回给客户端,其中任何一项涉及的工作多于仅列出原始查询中的列名.希望您在开始向它发出查询之前至少知道您的数据库.
| 归档时间: |
|
| 查看次数: |
15558 次 |
| 最近记录: |