gpt4 book ai didi

sql - 有没有办法在 MySQL 的 "where"语句中使用通配符?

转载 作者:太空宇宙 更新时间:2023-11-03 10:29:50 25 4
gpt4 key购买 nike

我有一个使用 where 子句的查询。有时,这可能会被使用,而在其他时候,我可能想完全省略它以取回所有结果。我当然可以编写两个不同的查询,但出于简单的原因,我想减少我可以编写的任何代码。有没有办法在 mysql 中执行此操作?

进行如下查询:

SELECT * FROM my_table WHERE id = '3'

和:

SELECT * FROM my_table

有没有一种方法可以使用顶级查询并仍然取回所有记录?

最佳答案

不,因为第一个查询中的谓词实际上可能不会从表中检索所有记录;它可能会使用索引,以便它只需获取查询需要返回的特定记录。

如果您想保留相同形式的谓词但仍然返回所有结果,您需要执行如下操作:

where id = 3 or id <> 3

或者这个:

where id = id

请注意,对于其中任何一个,如果 id 可以为 null,则您必须添加 or id is null

如果您只想在查询中使用谓词,这就足够了:

where 1

但这只是多余的,您也可以不使用谓词。

关于sql - 有没有办法在 MySQL 的 "where"语句中使用通配符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1634584/

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