当前位置:Gxlcms > mysql > Mysqlsql语句回顾1_MySQL

Mysqlsql语句回顾1_MySQL

时间:2021-07-01 10:21:17 帮助过:43人阅读

检索出不存在相同值的列表可以加上DISTINCT关键字

SELECT DISTINCT vend_id FROM products;

可以使用LIMIT子句来限制返回结果的数量

SELECT prod_name FROM products LIMIT 5;

LIMIT子句同样拥有offset的功能,就是设定从第几条数据开始获得

SELECT prod_name FROM products LIMIT 5,5;

代表从第五个数据开始的五条数据

虽然LIMIT具有offset的功能,但是Mysql还是提供了OFFSET子句

SELECT prod_name FROM products LIMIT 5 OFFSET 5;

mysql的索引值是从0开始的

可以使用ORDER BY子句来给数据进行排序,该子句取一个或多个列的名字,据此对输出进行排序

SELECT prod_name FORM products ORDER BY prod_name;

该子句可是用非检索的列排序数据

ORDER BY子句可以选择使用多个列排序,所选列之间使用逗号隔开。

ORDER BY 子句要仿造WHERE子句之后

ORDER BY子句可以指定排序的方向(升序和降序),默认是升序,如果想变为降序需要在ORDER BY 子句的最后加上DESC

DESC关键字只应用到直接位于其前面的列名,可以使用如下的查询方式

SELECT prod_name,prod_price,prod_id FROM products ORDER BY prod_name DESC,prod_name;

WHERE 子句的操作符号中判断相等使用=判断不相等使用<>符号,和编程语言当中略显不同

通过使用BETWEEN关键字来进行范围值检查

SELECT prod_name,prod_price FROM products WHERE prod_price BETWEEN 5 AND 10;

使用IS NULL来进行空值检查

SELECT prod_name FROM products WHERE prod_price IS NULL

该语句返回没有价格的产品数据

mysql中存在几个逻辑操作符,分别是以下几个

AND OR IN NOT

SELECT prod_id,prod_price,prod_name FROM products WHERE vend_id=1003 AND prod_price<=10; 取交集

SELECT prod_name,prod_price FROM products WHERE vend_id=1002 OR vend_id=1003;取并集

SELECT prod_name,prod_price FROM products WHERE vend_id IN(1002,1003) ORDER BY prod_name; 取交集

SELECT prod_name,prod_price FROM products WHERE vend_id NOT IN(1002,1003) ORDER BY prod_name; 取并集的补集

可以使用圆括号来标记计算次序

%通配符表示任何字符出现任意次序,使用LIKE操作符

SELECT prod_id,prod_name FROM products WHERE prod_name LIKE ‘jet%’;

该查询语句会查询所有prod_name字段以jet开头的行

_通配符匹配单个任意字符

SELECT prod_id,prod_name FROM products WHERE prod_name LIKE ‘_ ton anvil’;

该查询语句查询任何以ton anvil 为结尾并且在其之前只有一个字符的所有行

不要过度使用通配符,如果其他操作能达到相同的目的,应该使用其他操作符。

在确实需要通配符时,除非绝对有必要,否则不要把它们用在搜索模式的开始处,这样最慢。

人气教程排行