SQLが特定の日付のすべてのレコードを返し、最新のレコードを一番上に表示したい(注文した列には日付と時刻の両方が含まれています-「5/21/201211:48:04AM」などのエントリが含まれています")。
私のSQL(下記)がこれを行うと思います。ただし、実際の結果は時間要素を無視します。それらは次のように返されます:
2012年5月21日10:48:04AM 2012年5月21日10:12:04AM 2012年5月21日9:48:04AM 2012年5月21日10:54:04AM 2012年5月21日11:48:04AM ..。
(IOW、返される結果は、時間要素に関する限り、ランダムに並べられています)
クエリは次のとおりです。
SELECT ENTRYDATE ENTERED, ENTEREDBYABC ABC
FROM
SomeTable v
LEFT JOIN SomeTable w ON v.someCol = w.someCorrespondingCol
WHERE
ABC = :abc AND ENTRYDATE = trunc(sysdate)
ORDER BY ENTERED DESC
アップデート
より具体的なクエリと結果:
これ(列とテーブルの名前が変更されました):
SELECT ENTRYDATE ENTERED, ENTEREDBYABCID ABCID, COMMENTS
FROM
WHITMAN.HOLLOWSKY@ATTORNEY v
LEFT JOIN ABCworker w ON v.enteredbyabcid = w.abcid
WHERE
ABCID = 124393 AND ENTRYDATE = TRUNC(sysdate)
ORDER BY ENTRYDATE desc
...次のレコードを返します:
ENTERED ABCID COMMENTS
5/21/2012 1234 At 1:36 PM, ...
5/21/2012 1234 At 1:36 PM, ...
5/21/2012 1234 At 9:23 AM, ...
5/21/2012 1234 At 11:07 AM, ...
5/21/2012 1234 At 11:12 AM, ...
5/21/2012 1234 At 1:42 PM, ...
5/21/2012 1234 At 11:02 AM, ...
5/21/2012 1234 At 9:19 AM, ...
. . .
もう一度更新
クエリで:
select entrydate from WHITMAN.HOLLOWSKY@ATTORNEY order by entrydate desc
私は得る:
5/21/2012 3:15:50 PM
5/21/2012 3:15:35 PM
5/21/2012 3:15:25 PM
5/21/2012 3:15:25 PM
5/21/2012 3:14:31 PM
5/21/2012 3:14:22 PM
5/21/2012 3:14:11 PM
. . .
IOW、それはうまく機能します。
「entrydate」がDateTime列であるかどうか-私はそう思いますが、テーブル構造を調べる特権がないので...?