From a1cbb087f084b6be6e5628bd726f11a4d47424d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B7=AF=E7=8E=B2?= <1516489926@qq.com> Date: Tue, 24 Oct 2023 23:00:59 +0800 Subject: [PATCH] =?UTF-8?q?50=E9=A2=98=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...50\351\242\230\347\254\224\350\256\260.md" | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 "29 \350\267\257\347\216\262/20231024 50\351\242\230\347\254\224\350\256\260.md" diff --git "a/29 \350\267\257\347\216\262/20231024 50\351\242\230\347\254\224\350\256\260.md" "b/29 \350\267\257\347\216\262/20231024 50\351\242\230\347\254\224\350\256\260.md" new file mode 100644 index 0000000..77e9441 --- /dev/null +++ "b/29 \350\267\257\347\216\262/20231024 50\351\242\230\347\254\224\350\256\260.md" @@ -0,0 +1,39 @@ +## 笔记 + +一、 + +```mysql +select student_id,(select student_name from student where student_id=s.student_id) from score s ; +当需要连表,查询别的值的时,可在select后 +写select student_name from student where student_id=s.student_id +``` + +二、 + +mysql中week()函数是用来做周的统计和计算,返回日期的周数 + +例如统计今年每周有多少个注册用户 + +SELECT count(id) as count,week(create_time,1) as weeks FROM user WHERE create_time > ‘2020’ and create_time<‘2011’ GROUP BY weeks; + +sql里面的weeks就是第几周 + +WEEK(date, mode);有两个参数 + +1、date是要获取周数的日期 + +2、mode是一个可选参数,用于确定周数计算的逻辑 + +mode参数比较难理解,下面做个表格解释一下 + +模式 一周的第一天 范围 说明 +0 星期日 0-53 +遇到本年的第一个星期天开始,是第一周。前面的计算为第0周。 + +1 星期一 0-53 假如第一周能超过3天,那么计算为本年的第一周。否则为第0周 +2 星期日 1-53 遇到本年的第一个星期天开始,是第一周。 +3 星期一 1-53 假如第一周能超过3天,那么计算为本年的第一周。否则为上年度的第5x周。 +4 星期日 0-53 假如第一周能超过3天,那么计算为本年的第一周。否则为第0周 +5 星期一 0-53 遇到本年的第一个星期一开始,是第一周。 +6 星期日 1-53 假如第一周能超过3天,那么计算为本年的第一周。否则为上年度的第5x周。 +7 星期一 1-53 遇到本年的第一个星期一开始,是第一周。 -- Gitee