SQL实际开发学习

注意!!!

select (很长的查询做表) 之后要设置别名不要加引号
错误select table.column1 from (xxxxxx) "table1"
正确·select table.column1 from (xxxxx) table1


group by,distinct 如何去重?

distinct:

select distinct name,age from student;

注意:

  1. distinct只能放在查询字段的最前面
  2. distinct只会去除全都重复的数据(例如上面的name和age不一起重复的话不会去重)

group by:

select name, age, sum(height) from student group by name,age;

注意:

  1. group by也是只去重字段完全重复的数据
  2. 可以配合聚类函数使用 例如count()/sum() 例如:select name, age, sum(height) from student group by name, age;

Datetime类型涉及的方法

min(取最早的数据)

max(取最晚的数据)

timestampdiff(两个timestamp类型相减)

SELECT TIMESTAMPDIFF(YEAR【类型】, ‘2017-06-01’, ‘2016-05-15’);
类型可以是YEAR、MONTH、DAY、HOUR、MINUTE、SECOND

日期类型与日期字符串相互转换

# 格式化参考:
select DATE_FORMAT(now(),'%Y-%m-%d %H:%i:%s');
#字符串转日期
select str_to_date('2021-04-02 10:37:14', '%Y-%m-%d %H:%i:%s'); # 2023-08-24 14:35:14

sql判断 if

if(expr1, expr2, expr3);

expr1: 函数
expr2:如果expr1返回true 返回expr2
expr3:如果expr1返回false 返回expr3

你可能感兴趣的:(MySQL,sql,学习,数据库)