簡體   English   中英

MySQL-提前一周獲取數據

[英]MySQL - Getting data for week ahead

我有這個SQL查詢:

SELECT
    "bookings"."customerID",
    "bookings"."arrivalDate",
    "bookings"."leavingDate",
    "bookings"."bookingID",
    "bookings"."pickup",
    "bookings"."dropoff",
    "bookings"."locationID",
    "locations"."locationName",
    "customers"."customerName"
FROM
    "bookings"
LEFT JOIN "customers" ON
    "bookings"."customerID" = "customers"."customerID"
LEFT JOIN "locations" ON
    "bookings"."locationID" = "locations"."locationID"
WHERE (
    "bookings"."arrivalDate" BETWEEN '2014-11-15' AND '2014-11-22'
)

我希望得到的是未來一周的所有預訂。 按最早的排序。 只是不能讓它工作!

SELECT
      b.customerID,
      b.arrivalDate,
      b.leavingDate,
      b.bookingID,
      b.pickup,
      b.dropoff,
      b.locationID,
      l.locationName,
      c.customerName
   FROM
      bookings b
         LEFT JOIN customers c
            ON b.customerID = c.customerID
         LEFT JOIN locations l
            ON b.locationID = l.locationID
   WHERE 
      b.arrivalDate > curdate()
      AND b.arrivalDate <= date_add( curdate(), INTERVAL 7 DAY )
   order by 
      b.leavingDate DESC

我更新了別名和長表名引用。 另外,where子句利用當前日期和前7天來提前一周,因此它不是硬引用。 如果希望查詢始終基於給定星期的星期六或星期日,您還可以進行調整。

至於“最舊”的排序方式……最舊的排序方式……只需更改子句的順序即可。 我正在猜測您的打算是在約會的日期上...因此,按該列DESCENDING會將最早的LEAVING項目放在列表的頂部。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM