Trong câu lệnh select nếu muốn lấy giá trị duy nhất của một cột nào đó, ta có 2 cách
SELECT DISTINCT ColumnName FROM TableName
SELECT ColumnName FROM TableName GROUP BY ColumnName
Vậy tốc độ cái nào nhanh hơn, theo mình nghĩ thì như nhau. Ví dụ:
SET STATISTICS IO OFF
GO
CREATE TABLE Test(Col1 INT, Col2 VARCHAR(50))
GO
INSERT INTO Test(Col1, COl2) VALUES(1, 'ABC')
INSERT INTO Test(Col1, COl2) VALUES(2, 'ZYX')
INSERT INTO Test(Col1, COl2) VALUES(2, 'ABC')
INSERT INTO Test(Col1, COl2) VALUES(3, 'AAA')
GO
SELECT * FROM Test
GO
SET STATISTICS IO ON
SELECT DISTINCT Col2 FROM Test ORDER BY Col2
SELECT Col2 FROM Test GROUP BY Col2 ORDER BY Col2
GO
DROP TABLE Test
Qua bên tab Messages để xem kết quả.
Không có nhận xét nào:
Đăng nhận xét