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

Dapatkan tanggal minggu antara dua tanggal dan hari terakhir dari satu bulan mysql

Karena Anda sekarang menyebutkan bahwa Anda tidak memiliki tabel untuk tanggal, Anda dapat mendekatinya seperti ini jika Anda tidak ingin menambahkan tabel kalender umum pada database Anda.

declare @startdate datetime 
declare @enddate datetime
DECLARE @startdateLoop datetime

select @startdate = CAST(start as DATE), @enddate = CAST(end_date as DATE) from #t
set @startdateLoop = @startdate
CREATE TABLE #tempCal
  (dates datetime)

  WHILE @startdateLoop != @enddate 
  BEGIN
  INSERT INTO #tempCal
  SELECT @startdateLoop

  SET @startdateLoop = DATEADD(dd, 1, @startdateLoop)
  END

  SELECT * FROM #tempCal
  WHERE dates between @startdate and @enddate and DAYOFWEEK(dates) = 1

Anda dapat mengubahnya menjadi prosedur jika Anda mau.

Akan tetap menyenangkan jika Anda MEMILIKI meja kalender; seperti yang disarankan Tim.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Yii2 dan menyimpan data dalam database sebagai UTC

  2. Mysql::Error:Kunci yang ditentukan terlalu panjang; panjang kunci maksimal adalah 1000 byte

  3. MySQL :Pilih record dengan kondisi yang berlaku untuk beberapa baris

  4. Fungsi perbandingan tanggal MySQL

  5. Mengapa _ (garis bawah) cocok - (tanda hubung)?