SQL WHERE 列 = 一切

新手上路,请多包涵

SQL 是否能够按照以下方式做一些事情: SELECT * FROM table WHERE column = everything

原文由 Majo0od 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 630
2 个回答

您的问题允许三种解释:

  1. 您不关心该列:从 where 子句中删除它(或者如果这是唯一的子句,则将 where 子句一起删除)
  2. 你想设置列,有点你不在乎:使用 WHERE column IS NOT nULL
  3. 您想要一个搜索,它还可以显示来自简单 SQL 模板的所有记录: SELECT * FROM table WHERE column LIKE '%$searchterm%'

原文由 Eugen Rieck 发布,翻译遵循 CC BY-SA 3.0 许可协议

如果你想这样做,你基本上需要使用 WHERE true 。由于 MySQL 不接受 true,因此您必须将其替换为数字。

作为整数,0 等于 false,1 等于 true。

这意味着,如果您想实现“WHERE 一切”,您可以简单地使用:

 WHERE 1

您还可以使用始终输出为 true 的内容,例如:

 WHERE 1=1

或者

WHERE 1+2-1=2

通常,您也可以只删除 WHERE 声明:

 SELECT * FROM table;

代替

SELECT * FROM table
WHERE 1=1;

原文由 ethry 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏