2

次のように開始日と終了日が保存されたイベントテーブルがあります

 event_id   eventstartdate    eventenddate 
    1       2012-10-02         2012-10-20 
    2       2013-09-27         2013-10-27 
    6       2013-10-18         2013-11-18 
    8       2012-11-06         2012-11-23 
    9       2013-02-05         2013-02-12 
    10      2013-06-11         2013-06-13 

そして、今日からイベント開始日でイベントの順序を表示したい..単一のクエリでイベント開始日に基づいて過去のイベントを取得します..

期待される結果は次のとおりです

event_id   eventstartdate    eventenddate
      1      2013-09-27         2013-10-27 
      2      2013-10-18         2013-11-18
      3      2013-06-11         2013-06-13
      4      2013-02-05         2013-02-12
      5      2012-11-06         2012-11-23 
      6      2012-10-02         2012-10-20
4

3 に答える 3

1

CURDATE()を使用して実際のデータを取得し、現在のデータの前にあるすべての行を選択してORDER BYから、今日から降順に並べ替えることができると思います

SELECT *
FROM table
WHERE eventstartdate < CURDATE()
ORDER BY eventstartdate DESC
于 2013-06-13T15:49:37.527 に答える
0

このクエリを使用する必要があると思います

SELECT * FROM 
  table 
ORDER BY eventstartdate DESC

私によると、開始日順のすべてのイベントが降順で表示されます。現在の日付の上とマイナス 1 で今日のイベントを意味します。

于 2013-06-13T15:57:56.103 に答える
0

私はこれがあなたが求めているものだとは思いませんが。質問をよりよく理解するために、期待される結果を確認する必要があります。

SELECT Event_ID, EventStartDate, EventEndDate 
FROM Table
ORDER BY EventStartDate 
于 2013-06-13T15:49:29.970 に答える