diff --git "a/59 \346\236\227\345\263\260/10\346\234\21024\346\227\245.md" "b/59 \346\236\227\345\263\260/10\346\234\21024\346\227\245.md" new file mode 100644 index 0000000000000000000000000000000000000000..eeb03611778d0caa417009b5a02d0ebcf5b58b50 --- /dev/null +++ "b/59 \346\236\227\345\263\260/10\346\234\21024\346\227\245.md" @@ -0,0 +1,15 @@ +### 子查询的三种方法 + +1.放在select后面当列来用,要求子查询的结果是单列单行 + +2.放在from后面当表来用,放任意子查询,要求子查询的结果要取一个别名 + +3.放在where后面当条件用,一种是结果单列单行,此时条件可以直接用 = < > ,另一种情况是单列多行 + +反过来,你写的查询是多列多行,只能当表来用 + +条件中用in关键字时,( )里的值会自动去重 + +count(*)查询所有列,包括null,括号里可以换成常量 + +count(列名时)只统计该列名非null值的数量 \ No newline at end of file diff --git "a/59 \346\236\227\345\263\260/10\346\234\21025\346\227\245.md" "b/59 \346\236\227\345\263\260/10\346\234\21025\346\227\245.md" new file mode 100644 index 0000000000000000000000000000000000000000..817a80f2ee39446401349e2bb5312824e97a9520 --- /dev/null +++ "b/59 \346\236\227\345\263\260/10\346\234\21025\346\227\245.md" @@ -0,0 +1,39 @@ +``` +Mysql时间查询语句 +做日期对比: +select * from 表名 where DATE_FORMAT(时间字段,’%Y-%m-%d’) = 年-月-日; +如: +select * from student where DATE_FORMAT(time,’%Y-%m-%d’) = 2020-11-20; +获取当前时间: +使用now() +select * from 表名 where DATE_FORMAT(时间字段,’%Y-%m-%d’)=DATE_FORMAT(NOW(),’%Y-%m-%d’); +如: +select * from student where DATE_FORMAT(time,’%Y-%m-%d’) = DATE_FORMAT(NOW(),’%Y-%m-%d’); +也可以只判断年份: +select * from 表名 where DATE_FORMAT(时间字段,’%Y’)=年; +如: +select * from student where DATE_FORMAT(time,’%Y’) = 2020; +还可以判断月份等,方法跟年份那样。 +%Y显示年份4位 +%y显示年份2位 +%M显示月份为英文 +%b 显示月份位英文缩写(Jan~Dec) +%m显示月份为数字(01~12) +%c显示月份数字(1~12) +%W显示星期英文 +%a显示缩写星期英文 +%d显示月份天数(00~31) +%e显示月份天数(0~31) +%j显示 一年中的天数(001~366) +%H显示小时(00~23) +%k显示小时(0~23) +%h显示小时(01~12) +%i显示分钟, 数字(00~59) +%r显示时间,12 小时(hh:mm:ss [AP]M) +%T显示时间,24 小时(hh:mm:ss) +%S显示秒(00~59) +%p显示AM或PM +%w显示一个星期中的天数(0=Sunday ……6=Saturday ) +%U显示星期(0……52), 这里星期天是星期的第一天 +%u显示星期(0……52), 这里星期一是星期的第一天 +``` \ No newline at end of file