Rumah >pangkalan data >tutorial mysql >浅谈MySQL漂流记(七)

浅谈MySQL漂流记(七)

黄舟
黄舟asal
2017-03-08 13:43:24966semak imbas

一路走来,是不是觉着挺快的,已经到了MySQL漂流记(七)了>>> 

1)简单介绍Select

select selection_list  //选择哪些列  
from table_list  //从何处选择行  
where primary_constraint  //行必须满足什么条件  
group by grouping_columns // 怎样对结果分组  
having secondary_constraint  //行必须满足的第二条件  
order by sorting_columns //怎样对结果排序  
limit count  //结果限定

注意:
所有使用的关键词必须精确地以上面的顺序给出。例如,一个having子句必 须跟在group by子句之后和order by子句之前;
上述语法中除了select关键字之外,其他每样东西都是可选的。有些数据库需要用from关键字,但是MySQL允许对表达式求值而不引用任何表

2)普通查询

select * from table01;//查询当前表里所有的列的数据 
select name,age from table01;//查询当前表里name列和age列的所有数据 
select (2+3)/2.5;//表达式求值而不引用任何表

3)条件查询

select * from table_new where age>20;


这里写图片描述

4)排序查询

关键字:order by–该子句对查询返回的结果按一列或多列排序
asc表示升序,为默认值,desc表示降序
需要注意的是:
desc/asc关键词仅适用于紧跟在它之前的列名字
Case: select * from table_new order by age desc;
这里写图片描述

5)查询分组与行计数

group by从句根据所给的列名返回分组的查询结果,可用于查询具有相同值的列,如果除了计数还返回一个列的值,那么需要使用group by 语句,否则无法计算记录,产生错误;
Case: select name,dizhi,count(*) from table_new group by name,dizhi;
这里写图片描述
如果想查询一个表里到底有多少条记录?
可以直接使用下面的语句:
语法:

select count(*) from 表名; 
Case:  select count(*) from table_new;

6)查询多个表

现在需要从表table_new和另一个表格table_new2中查询到name相同的字段,打印出来;
Case: select t1.name,t2.name from table_new as t1,table_new2 as t2 where t1.name=t2.name;
这里写图片描述
说明:as表示为这个表取别名。


Atas ialah kandungan terperinci 浅谈MySQL漂流记(七). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn