查询日期所在1周的数据

SELECT
  T_KOJIN_YOTEI."YOTEI" AS "YOTEI",
  T_KOJIN_YOTEI."BASHO" AS "BASHO",
  T_KOJIN_YOTEI."YOTEI_START_DT" AS "YOTEI_START_DT",
  T_KOJIN_YOTEI."YOTEI_END_DT" AS "YOTEI_END_DT",
  T_KAIIN."SYSTEM_NM" AS "SYSTEM_NM",
  (TO_DATE(TMP.YOTEI_START_DT) + 1) AS TMPYOTEI_START_DT
FROM
  T_KOJIN_YOTEI,
  T_KAIIN,
  (
    SELECT
      (YOTEI_START_DT - to_Char(T_KOJIN_YOTEI."YOTEI_START_DT", 'D')) as YOTEI_START_DT
    FROM
      T_KOJIN_YOTEI
    WHERE
      T_KOJIN_YOTEI.KOJIN_YOTEI_SEQ = ?
  ) TMP
WHERE
  T_KOJIN_YOTEI."YOTEI_START_DT" BETWEEN TO_DATE(TMP.YOTEI_START_DT) + 1 AND TO_DATE(TMP.YOTEI_START_DT) + 7
  AND T_KAIIN.USER_CD = T_KOJIN_YOTEI.USER_CD
  AND TO_CHAR(T_KOJIN_YOTEI."YOTEI_START_DT", 'HH24:MI:SS') BETWEEN '07:30:00' AND '19:30:00'
  AND TO_CHAR(T_KOJIN_YOTEI."YOTEI_END_DT", 'HH24:MI:SS') BETWEEN '07:30:00' AND '19:30:00'
查询数据库中本数据,你需要使用 SQL 语句中的日期函数和条件语句。具体步骤如下: 1. 使用日期函数获取本的起始日期和结束日期。在 MySQL 中,可以使用 `WEEK()` 函数获取当前日期所在的数,然后再结合 `DATE_ADD()` 和 `DATE_SUB()` 函数计算出本的起始日期和结束日期。 例如: ``` SELECT DATE_SUB(NOW(), INTERVAL WEEK(NOW()) - 1 WEEK) AS start_date, DATE_ADD(NOW(), INTERVAL 7 - WEEKDAY(NOW()) DAY) AS end_date; ``` 这个语句将返回本的起始日期和结束日期,其中 `NOW()` 函数返回当前日期,`WEEK()` 函数返回当前日期所在的数,`WEEKDAY()` 函数返回当前日期是本的第几天(星期天为 0,星期六为 6),`DATE_ADD()` 函数在当前日期上加上到本结束还有多少天,`DATE_SUB()` 函数在当前日期上减去到本开始已经过了多少天。 2. 在查询语句中加入条件,只返回本数据。假设你要查询名为 `table1` 的表中 `date` 字段在本范围内的数据,可以这样写: ``` SELECT * FROM table1 WHERE date BETWEEN DATE_SUB(NOW(), INTERVAL WEEK(NOW()) - 1 WEEK) AND DATE_ADD(NOW(), INTERVAL 7 - WEEKDAY(NOW()) DAY); ``` 这个语句将返回名为 `table1` 的表中 `date` 字段在本范围内的所有数据。其中 `BETWEEN` 关键字表示 `date` 字段的值必须在指定的日期范围内,`NOW()` 函数返回当前日期,`WEEK()` 函数返回当前日期所在的数,`WEEKDAY()` 函数返回当前日期是本的第几天,`DATE_ADD()` 函数在当前日期上加上到本结束还有多少天,`DATE_SUB()` 函数在当前日期上减去到本开始已经过了多少天。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值