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

Bagaimana cara mendapatkan tanggal yang tersedia dengan reservasi?

Jika formulir reservasi Anda meminta $start dan $end date/times untuk reservasi, kueri ini akan memberi tahu laptop mana yang tersedia selama periode yang ditentukan oleh dua tanggal tersebut:

SELECT items.id, items.name
FROM items
LEFT JOIN types ON items.type = types.id
LEFT JOIN reservations ON reservations.item_id = items.id
WHERE (((reservations.endDate NOT between $start AND $end) and
      (reservations.startDate NOT between $start AND $end)) or
      (reservations.id IS NULL)) and
      (types.id = $laptop_type_id)

Dua between pertama klausa akan menemukan laptop yang tanggal mulai/akhirnya tidak sesuai dengan tanggal mulai/akhir yang diminta - mis. mereka dicadangkan, tetapi tersedia dalam rentang waktu yang ditentukan. Pemeriksaan nol akan menemukan laptop yang tidak dipesan sama sekali. Dan pemeriksaan types.id membatasi pencarian hanya pada laptop.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tidak Dapat Membuat MySQL TRIGGER ketika saya menggunakan IS NOT NULL

  2. Tes penerimaan codeception dalam transaksi database di MySQL

  3. Bagaimana cara saya meminta bantuan untuk mengoptimalkan &memperbaiki kueri di MySQL?

  4. Flask_SQLAlchemy, MySQL, simpan karakter Swedia , , ö?

  5. Sisipan Meja Kerja MySQL