【SQL】where查询条件中的1=1 及<>的含义

发布时间 2023-10-19 14:51:19作者: Phoenixy

1=1 表示永远为真,不起约束作用查询所有,不会报错

SELECT t.*,t.rowid FROM table_name t WHERE 1 = 1;

  Tips: 查询table_name表中的所有数据

 

1 <> 1 代表false, 返回空结果集

SELECT t.*,t.rowid FROM table_name t WHERE 1 <> 1;

 

  Tips:table_name表中有无数据,均返回查询不到数据 

 

条件中的<> 表示 非 数据之外的所有数据

SELECT t.*,t.rowid FROM table_namet WHERE t.id <> 1; -- 表示除了id=1之外的所有数据 
-- 同 SELECT t.*,t.rowid FROM table_namet WHERE t.id != 1;

SELECT t.*,t.rowid FROM table_namet WHERE t.name <> 'zhangsan';    -- 表示除了name='zhangsan'之外的所有数据
-- 同 SELECT t.*,t.rowid FROM table_namet WHERE t.name != 'zhangsan';