CreatedDate를 기반으로 SQL 테이블에 삽입 된 최신 레코드를 가져 오려고합니다. 예를 들어, 아래 표에서 세 번째 행을 얻고 싶습니다.CreatedDate 필드의 도움으로 삽입 된 최신 행 얻기
A B C 2009-05-04 19:30:52.847
A B D 2009-05-04 19:30:55.050
A B E 2009-05-04 19:30:57.003
나는 작동하는 쿼리가 있지만 동일한 결과를 얻는 더 좋은 방법이 있는지 궁금해하고 있습니다. 다음은 현재 테스트를 위해 사용중인 테이블, 데이터 및 쿼리입니다. 이 작업을 수행하는 더 좋은 방법이 있습니까?
CREATE TABLE TestTable (
ColumnA NVARCHAR(10),
ColumnB NVARCHAR(10),
ColumnC NVARCHAR(10),
CreatedDate DATETIME DEFAULT Getutcdate())
INSERT INTO TestTable(ColumnA, ColumnB, ColumnC) VALUES ('A', 'B', 'C');
INSERT INTO TestTable(ColumnA, ColumnB, ColumnC) VALUES ('A', 'B', 'D');
INSERT INTO TestTable(ColumnA, ColumnB, ColumnC) VALUES ('A', 'B', 'E');
SELECT *
FROM TestTable
WHERE CreatedDate = (SELECT Max(CreatedDate)
FROM TestTable
WHERE ColumnA = 'A'
AND ColumnB = 'B'
GROUP BY ColumnA,
ColumnB)
고마워요!