1

現在、私はこれを得ました:

SELECT `deals`.*, deals_bookings.date AS 'b_date', deals_bookings.id AS 'book_id' 
FROM `deals_bookings` 
INNER JOIN deals ON (deals.ID = deals_bookings.deal_id) 
INNER JOIN users ON (users.id = deals.partner_id) 
INNER JOIN deals_bookings_times ON (deals_bookings_times.book_id = deals_bookings.id) 
WHERE 1 AND deals_bookings.date = CURDATE() AND users.company_type = 'restaurant'

これは、今日の予約日 (CURDATE()) を持つ取引を取得します。

今、列を追加しました: deals_bookings.everyWeekDay

その列の計画は、週番号を保存することです-> 1-7 の間で、1 は月曜日 (週の最初の日)、7 は日曜日です。

純粋な mysql クエリを使用して、deals_bookings.date = CURDATE() または deal_bookings.everyWeekDay = 今日の週番号のいずれかを持つすべての取引を選択することは可能ですか?

4

1 に答える 1

1

使いたい deals_bookingseveryWeekDay= 平日(現在())

ただし、WEEKDAY は月曜日 - 0、日曜日 - 6 を返します。したがって、1を追加する必要があります

条件の組み合わせ

WHERE (`deals_bookings`.`date` = CURDATE() OR `deals_bookings`.`everyWeekDay` = WEEKDAY(NOW()) + 1 )  AND `users`.`company_type` = 'restaurant'
于 2012-06-17T14:36:25.960 に答える