《MySQL必知必会》学习2

《MySQL必知必会》学习二

?

一.检索数据(select)

? 多条SQL语句必须以分号(;)分隔。分号也是SQL语句的结束符。

? SQL语句不区分大小写,许多开发人员喜欢对所有SQL关键字使用大写,而对所有列和表名使用小写,易于阅读和调试。

?

? select语句中两个常用的关键字:

?????? 1.DISTINCT:查询的时候”SELECT DISTINCT * FROM TABLE”,可以去掉表中重复数据。

?????? 2.LIMIT:用来限制结果。

?????????????? 如你想查找商品表(products)中前5条数据,你可以执行如下命令:

          SELECT * FROM products LIMIT 5;

?????????????? 如果想得出商品表中下一个5行,你可以执行如下命令:

          SELECT * FROM products LIMIT 5,5;

??????????????? 注:LIMIT 5,5 指示MySQL返回从行5开始的5行。即第一个数为开始位置,第二个数为检索的行数。

? ? ? ? ? ? ? ? ? ? ? ? 行0 检索出来的第一行为行0而不是行1。MySQL是以0开始计数的,和数组一样。

????????????????????? ? MySQL 5 支持LIMIT的另一种语法:LIMIT 4 OFFSET 3 意为从行3开始取4行,就如LIMIT 3,4一样

?

二.排序检索数据(使用ORDER BY子句)

? 为了明确地排序用SELECT语句检索出来的数据,可使用ORDER BY子句。如我们希望根据商品名排序商品表:

?

SELECT * FROM products ORDER BY prod_name;

??????????????? 注:ORDER BY 后面可以跟多个字段,但需用逗号隔开。默认使用ORDER BY 以升序排序。以上命令如:

?

SELECT * FROM products ORDER BY prod_name ASC;

?????????????????????? 如果你想根据商品名降序排序,你可以这么写:

?

SELECT * FROM products ORDER BY prod_name DESC;

?????????????????????? 在给出ORDER BY子句时,应该保证它位于FROM子句后面,如果使用LIMIT,它必须位于ORDER BY之后。

?

三.过滤数据(使用WHERE子句)

? 检索出商品表中商品价格为2.5的行:

?

SELECT * FROM products WHERE prod_price=2.5;

?

? WHERE子句操作符

???????? =????????????????????????????????????? 等于

???????? <>??????????????????????????????????? 不等于

???????? !=???????????????????????????????????? 不等于

???????? <????????????????????????????????????? 小于

???????? <=??????????????????????????????????? 小于等于

???????? >????????????????????????????????????? 大于

???????? >=??????????????????????????????????? 大于等于

???????? BETWEEN ? ? ? ? ? ? ? ? ? ? 在指定的两个值之间

?

? 空值检查(NULL)

???

SELECT * FROM products WHERE prod_price IS NULL;

?

四.组合WHERE子句

? 一般有四种操作符AND,OR,IN,NOT,现以商品表为例给出相应四种操作符使用语法

?

? AND操作符:

SELECT * FROM products WHERE prod_price =4500 AND prod_name='iphone';

?

? OR操作符:

SELECT * FROM products WHERE id=1002 OR id=1003;

?

? IN操作符:

SELECT * FROM products WHERE id IN(1002,1003) ORDER BY prod_name;

?

? NOT操作符:

SELECT * FROM products WHERE id NOT IN(1002,1003) ORDER BY prod_name DESC;

?

?


本章内容比较简单基础,适合初学者。万丈高楼平地起!

?

?

?

《MySQL必知必会》学习2

相关文章:

你感兴趣的文章:

标签云: