Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

MYSQL Tambahkan hari kerja hingga saat ini

Coba ini:

SELECT DATE_ADD(
    date_field,
    INTERVAL 5 + 
    IF(
        (WEEK(date_field) <> WEEK(DATE_ADD(date_field, INTERVAL 5 DAY)))
        OR (WEEKDAY(DATE_ADD(date_field, INTERVAL 5 DAY)) IN (5, 6)),
        2,
        0)
    DAY
    ) AS FinalDate
FROM `table_name`;

Cara kerjanya:

  • Pertama, tanggal Anda akan bertambah 5 hari.
  • Kedua, ketika date_field dan 5 hari kemudian dalam dua minggu yang berbeda, harus ditambah 2 hari lagi.
  • Ketiga, jika 5 hari kemudian adalah Sat atau Sun , harus ditambah 2 hari lagi.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengganti \r\n dengan PHP

  2. MySQL mengambil variabel dari Stored Procedure di PHP PDO

  3. GALAT 1049 (42000):Basis data tidak dikenal 'mydatabasename'

  4. Apakah BIGINT(8) bilangan bulat terbesar yang dapat disimpan MySQL?

  5. ActiveRecord::ConnectionTimeoutError:tidak dapat memperoleh koneksi database dalam 5.000 detik (menunggu 5.000 detik)