我有一个有 75 列的表。仅显示 in 中的值的 sql 语句是什么?
thanks
确实,类似的声明不存在(在SELECT
您只能对行使用条件过滤器,不能对列使用条件过滤器)。但你可以尝试写一个(有点棘手)程序。它必须检查哪些列至少包含一个不包含NULL
/空值,使用查询。当您获得此列列表时,只需将它们连接到一个字符串中,每个列之间用逗号分隔,然后编写一个可以运行的查询,返回您想要的内容。
EDIT:我考虑过,我认为你可以通过一个程序来做到这一点,但要满足以下条件之一:
您可以在一个array,如果您的 DBMS 的存储过程支持数组(或用 C 等编程语言编写该过程),并在它们上循环,使SELECT
每次,检查它是否为空*列。如果它至少包含一个值,则将其连接到一个列名称以逗号分隔的字符串。最后,您可以仅使用非空列进行查询!
除了存储过程之外,您还可以编写一个简短的program(例如在Java中)你可以在那里处理更好的灵活性。
*如果您检查NULL
值这很简单,但如果您检查空值,则需要对每一列进行管理数据类型...另一个具有数据类型的数组?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)