MySQL第五天(sql语句练习)

1.select * from tablename;返回给定数据表的所有数据记录

2.selece now();返回当前时间

3.select count(id) from tablename;统计一个数据表中有多少列。mysiam引擎记录了表中有多少行。innodb却没有。

4.select count(distinct name) from tablename;按照name列统计,统计表中有多少列,distinct表示去除重复的。

5.select id from tablename;查询表中的某一列信息,不会去除重复的内容。

6.select name from tablename limit 2;限制返回两条数据,相比不限制返回,节约了cpu,带宽。

7.select name from tablename limit 2,2;返回第三条和第四条数据。这里的前一个2表示偏移量,后一个2表示在返回多少条数据。

8.select sql_calc_found_rows name from tablename limit 2;sql_calc_found_rows使得下一次使用select found_rows();时会返回这次查询记录的总数,也就是name的总条数。上面的语句只能返回两条记录。

9.select found_rows();返回上次查询时记录的总数。

10.select name from tablenae order by name [desc];使查询结果显示按照name列定义的排序方式排列,desc可选使排序结果反转。

11.数据的排序方式的选择,1.看定义的数据列排序方式。2数据表的排序方式。3数据库的排序方式。4那个数据列的字符集排序方式。给定默认字符集的排序方式可以用 show character set查看。

12.select name from my_student order by name collate 排序方式;临时改变数据列的排序方式,不会使用到索引,所以排序很慢。

13.select name from my_student where name>='a';对查询结果赛选,name>='a'即名字中首字母大于a的名字,uft排序b>a;

14.select name from my_student where name like '%big%';使用通配符like进行筛选。%符号表示任意字符。

15.select name form my_studnet where id in (1,2);使用枚举型in来进行筛选,id为1或者2的就显示。

16.mysql不支持 column=null这样的语法。如果需要对包含null的数据记录进行搜索就必须要使用到函数isnull(colmum);

17.select * from table1 [left|right|inner] join table2 on table1.id=table2.id;使用left join就将以table1为基础表显示全部信息,table2表只返回的信息符合后边条件的信息。right join类似,以右表table2为基础。而inner则是返回两个表都满足条件的记录。

18.select name from my_student where id>=7 union [all]select name from my_student where id<=5;联合多条select命令执行,结果一并返回,可选项all用于显示重复的内容,默认mysql返回结果消除了重复的。tips:mysql中存放的数据不区分大小写。

19.(select name from my_student where id>=7 )union [all](select name from my_student where id<=5)order by name limit 2;使用圆括号可以让返回的结果使用order by和limit语法。

20.select name ,pname from my_student,my_profile where my_profile.pname=my_student.name;此句sql命令和之前的inner join命令差不多。

21.select name, count(id) as 'id计算' from my_student group by name;group by用于分组,和聚合函数一起使用,这里将name相同的进行id统计,name名相同的消除。as相当于给count(id)起了一个别名。

22.

23.对多个数据列进行group by查询。


24.如果group by字段只有一个数据列,加上 with rollup 将会有一条统计记录。


25.如果group by字段有多个个数据列,加上 with rollup 将会在每一条记录的后边生成一个小计,最后再合计。


26.为数据表创建一个备份数据表,但是新数据表里边没有任何索引


27.delete from tablename-删除一个数据表中的全部内容,drop table tablename-删除一个数据表,insert into tablename select * from tablename-从一个数据表中恢复数据到另一个数据表。


28.为整个数据库创建备份。


29.重一个备份文件中回复数据。

首先必须要有一个数据库-create database databasename;use databasename;source backstudent;这样新建的数据库中就有备份的数据了


猜你喜欢

转载自blog.csdn.net/bigseacoming/article/details/80585225