1

私は人々が医者に予約を取りに行くことができるウェブサイトを持っています。医者の予約の前日に、ヘルプデスクは予約の日に彼らの存在を確認するために患者に電話をかけます。

今、私は管理者に明日予約した人を表示する画面を作成しました。明日が土曜日の日曜日の場合、クリニックは日曜日に休業するため、月曜日に予約した人を表示する必要があります。

明日予定のある人のリストを表示するクエリを作成しました。明日が日曜日の場合に月曜日の人のリストを取得するには、このクエリに何を追加する必要がありますか。

CREATE TABLE Patients_Appointment_List(
  Patent_Id INT UNSIGNED PRIMARY AUTO_INCREMENT、
  Patient_Name VARCHAR(255)、
  予定日日付  
);

日曜日をスキップして月曜日からやり直すには、以下のクエリに何を追加する必要がありますか

SELECT Patient_Name
  FROM Patients_Appointment_List
 WHEREpointment_Date BETWEEN now()とdate_add(now()、INTERVAL 1 DAY)  
4

1 に答える 1

1

句で条件CASE式を使用してWHERE、明日が日曜日かどうかを確認できます。そうである場合は、条件付きチェックを調整して次の2日間を含めます。そうでない場合は、明日までの予定を表示します。

SELECT Patient_Name
FROM   Patients_Appointment_List
WHERE 
    CASE WHEN WEEKDAY(CURDATE() + INTERVAL 1 DAY) = 6 THEN 
         appointment_Date BETWEEN NOW() AND NOW() + INTERVAL 2 DAY ELSE
         appointment_Date BETWEEN NOW() AND NOW() + INTERVAL 1 DAY
    END
于 2012-07-28T04:47:46.297 に答える