gpt4 book ai didi

sql - 匹配具有相同值 SQL 的多个列

转载 作者:行者123 更新时间:2023-12-04 22:33:38 25 4
gpt4 key购买 nike

假设该表具有类似 akey1 的列, bkey2 , ckey3还有更多人喜欢它。
有没有办法寻找一个共同的值(value)
SELECT * FROM table WHERE %key% LIKE 'xyz'
除了使用多个 AND 、 OR 条件。
解决方案是否特定于 DBMS 无关紧要。

最佳答案

缺少动态 sql,您必须拼出每个列名。但是您可以获得一些语法快捷方式,并且只列出一次常量:

SELECT * FROM table WHERE 'xyz' IN (akey1, bkey2, ckey3)

使用动态sql,你仍然需要发出同样的查询……但你至少可以先使用字符串工具来构建它,如果你想使用通配符匹配,你可以查看 information_schema.columns查看以找到它们。但是,这涉及打开和迭代游标或将列数据返回给客户端,这两种方式都需要做更多的工作,而不仅仅是在原始查询中列出列名。希望您在开始向其发出查询之前至少了解您的数据库。

关于sql - 匹配具有相同值 SQL 的多个列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14116292/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com