书接上文:
目录
mysql是在服务器端保存数据,数据是存储在硬盘中的
初学可以用,工作要慎重使用,因为公司数据量太大,行数太多
1、全列查询
select * from 表名;
2、指定列查询
select 列名 from 表名;
3、查询的列为“表达式”
查询列为“表达式”,在查询过程中会进行一个简单的计算(列和列之间,行和行之间不行)
给所有同学的年龄加10
注意:进行表达式查询的时候,查询结构是一个临时表,并不会写入硬盘,(临时表的类型也不是和原始表的类型完全一致,会尽可能把数据表示进去),select只是查询,无论如何操作select都不会修改硬盘上的数据!!
查询所有同学的三门课总分
查询临时表的列名就是写的表达式
4、给查询结果指定别名
5、去重distinct
查询的时候,针对列来进行去重(把有重复的记录合并成一个)
指定几个列就要求一定要这几个列重复才可以
6、针对查询结果进行排序order by
默认从小到大排序 asc
从大到小手动改成desc(descend)
关于排序的注意事项:
- 如果sql中没有显式的写order by ,认为查询结果的顺序是不可预期的(mysql没有承诺默认顺序是按照插入顺序依次排列的)
- 如果要排序的列中有NULL,则视NULL为最小值
- 要是多个记录,排序的列值相同,此时先后顺序也是不确定的
7、对别名/表达式来进行排序
按照同学的总成绩进行排序
在sql中,null和任何值进行计算,结果还是null
8、指定多个列进行排序
优先级问题:
先以第一列为标准排序,当第一列重复时,再按照第二个列的标准排序........
可以为每一列指定从小到大或者从大到小排序,在每一列后加asc或者desc