与MySQL的零距离接触

来源:互联网 发布:数据库入门经典 编辑:程序博客网 时间:2024/04/26 18:01
转载自:http://blog.sina.com.cn/u/5688833365

1.限制查询结果返回数量:
(1)SELECT * FROM users LIMIT 2; // 一个数字限制查询结果数量为 2 条
(2)SELECT * FROM users LIMIT 2,3 ;从第三个开始(第一个为0),返回三条。
(3)第三种insert,数据从一个表插入到另一个表:
INSERT test SELECT username FROM users WHERE age >=30; // 字段不匹配提示
INSERT test(username) SELECT username FROM users WHERE age >=30;

2.对查询结果进行排序,默认是升序
order by{col_name}
select * from users order by id desc; //对一个字段排序
select * from users order by age,id desc; //两个字段同时排序
desc是降序
对查询结果进行排序:[ORDER BY [col_name | expr | position } [ASC|DESC],...]elect * from user order by id desc;
可以同时按多条字段进行排序,规则是先按前面的字段排,在基础上再按后面字段排。
如:SELECT * FROM users ORDER BY age,id DESC; 先按照age排序,如果age有重复的,重复的字段里按id排序

3.分组条件:
利用GROUP BY 分组 添加分组条件 [HAVING where_condition]
要么为一个聚合函数,要么出现在SELECT 条件中。
[HAVING when where_condition]
SELECT sex FROM users GROUP BY 1 HAVING age > 35; //有错
SELECT sex, age FROM users GROUP BY 1 HAVING age > 35;
SELECT sex FROM users GROUP BY 1 HAVING count(id) >= 2;
(这条指令,指按照sex分组,分成了两组sex=0和sex=NULL,条件id数大于2的留下显示,显然sex=0个数有8>2故留下,而 sex=NULL个数为1,不满足条件,故不显示。如果条件改成count(id)>=1,则会显示sex为0和NULL两个分组。)
聚合函数永远只有一个返回结果
count是记录个数的,

4.SHOW TABLES [FROM db_name] [LIKE 'pattern' | WHERE expr];(可以用来查看其他数据库的表列表)
例:
SHOW TABLES;//查看当前选择的数据库的所有表
SHOW TABLES FROM mysql;//查看mysql数据库中的所有表,当前选择数据库位置不变。

0 0
原创粉丝点击