我对SQL语法有疑问。
我有一个像(id, name, subid, preview)
这样的mysql表,默认情况下预览设置为0
。所以现在我想做一个select只查询preview
与零不同的行。
我可以在一个查询中执行此操作吗?或者我需要查询所有内容然后进行(if else
)决定?
与SELECT * FROM table_name;
类似 - 并通过...?
答案 0 :(得分:1)
将条件置于WHERE
SELECT * FROM table_name
WHERE preview !=0
答案 1 :(得分:1)
你可以做到
select *
from mytable
where preview != 0
!=
表示“不等于”。有些数据库也使用<>
来表达相同的含义。
如果预览可以为空,您是否还要返回预览为空的行?如果是这样,您可能想尝试:
select *
from mytable
where preview != 0 or preview is null
答案 2 :(得分:1)
另外值得指出的是,虽然*
会很好,但您应该始终尝试在查询中指定所需的列,以便更清楚查询实际检索的内容,因此
SELECT id, name, subid, preview from table_name WHERE preview != 0
比SELECT *
更清晰,但无论如何所有其他答案也是正确的。
答案 3 :(得分:0)
怎么样?
SELECT * FROM table_name WHERE preview != 0;
答案 4 :(得分:0)
你可以简单地使用这样的查询:select * from table_name where preview&lt;&gt; 0