领先的免费Web技术教程,涵盖HTML到ASP.NET

网站首页 > 知识剖析 正文

sql基础(三)_sql基础用法

nixiaole 2025-02-17 13:26:57 知识剖析 15 ℃

过滤数据 WHERE

SELECT * FROM user_basic WHERE id =2;

检索表中 id为2的数据;

WHERE和排序ORDER BY一起使用时,ORDER BY必须使用在WHERE之后

WHERE之后支持的符号有

WHERE id > 2;   大于
WHERE id >= 2;   大于等于
WHERE  id < 2;  小于
WHERE  id <> 2; 或则 WHERE  id != 2;   不等于
 WHERE  id IS NULL; 为空的值
  WHERE  id BETWEEN; 为空的值
  WHERE id BETWEEN 2 AND 6; 检索范围值  Id 2 到 6的值(包含2和6的值)

高级过滤

AND

SELECT *  FROM user_basic WHERE id >5 AND user_account > '166';

检索 id 大于2 的数据并且 user_account的值大于166的数据


如果有更多的并条件的检索条件添加 AND 就可以

OR(或)

SELECT *  FROM user_basic WHERE id >15 AND user_account > '166' OR  id = 2;

当前查询条件前半段id >15 AND user_account > '166' 因为没有id大于15的值整个条件也就不成立了,执行后面的或语句

AND与OR并存的时候最后配置小括号

SELECT *  FROM user_basic WHERE id = 2 OR name = '133name' AND user_account != '144';

从该sql语句上看出来正常的执行顺序,应该是获取 id 为 2的数据,但在实际执行中会优先执行 name = '133name' AND user_account != '122'; 然后去执行 OR的语句

sql会优先处理 AND的结构 然后才是OR,所以在检索的时候应该用小括号扩起来

SELECT *  FROM user_basic WHERE (id = 2 OR name = '133name') AND user_account != 122 ;


扩展

分页查询并进行排序

SELECT *  FROM user_basic ORDER BY created_at DESC LIMIT 100 OFFSET 0;
最近发表
标签列表