`
ihuangweiwei
  • 浏览: 265540 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

《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;
 

 


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

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics