mysql - MySQL 一直支持字段的速记验证吗?

标签 mysql shorthand

我目前正在编写大量 MySQL 查询并注意到我可以使用速记验证,如下所示:

SELECT id, content, date_added FROM table WHERE date_added

(其中 date_added 是默认的 NULL 时间戳,我不必特别询问它是否为 NOT NULL 以返回所有具有时间戳的结果)

我只需要知道是否建议不要这样做,或者这个速记功能是否在某个 MySQL 版本中可用,因为我想保持向后兼容性。 我以前确定这行不通,我必须写出整个条件,但现在我无法确认。

最佳答案

我不会确切地将此称为“速记验证”。我不确定你是从哪里得到的。

WHERE 子句只是为了检查真实性。 NULL 不是 TRUE 值,所有其他非零值都是 TRUE

即使这对您有用,我仍然强烈建议您不要这样做。我赞成非常明确的数据库查询。我们这里不需要任何附加的巫术……

坚持

SELECT id, content, date_added
FROM table
WHERE date_added IS NOT NULL;

关于mysql - MySQL 一直支持字段的速记验证吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7103019/

相关文章:

java - spring boot 查询错误的表

php - 如何正确地将 php 数组分配给 javascript 数组

php - 如何在 INSERT 查询中将美国日期格式转换为 MYSQL 格式

html - 我的字体速记不起作用,其中包括字体大小和字体粗细属性

Jquery 简写 IF-ELSE

python - 解码 Base64 编码时填充错误错误

php - 即使函数有效,也不会返回 true

Java:String.length() > 0 和 Array.size() > 0 简写?

html - 有可用的 HTML 简写版本吗?

python - 在 Python 中处理深度嵌套字典的便捷方法