Sắp xếp theo tứ tự khi chèn vào bảng tạm

Chuyên mục thảo luận các vấn đề liên quan đến ứng dụng quản lý và cơ sở dữ liệu

Moderator: Điều hành

Post Reply
muaphonui_2010
Thành viên ưu tú
Thành viên ưu tú
Posts: 551
Joined: Fri 26/11/2010 1:15 pm
Location: TP.HCM
Has thanked: 190 times
Been thanked: 36 times
Contact:

Sắp xếp theo tứ tự khi chèn vào bảng tạm

Post by muaphonui_2010 »

Mình lưu lại cách này để có lúc cần thì tìm lại cho dễ, và bạn nào cần thì xem.
- Khi dùng sql server 2012 thì việc chèn bào bảng tạm dạng "SELECT ....INTO #phatsinh From (...." nó sẽ không sắp xếp thứ tự theo mệnh đề ORDER BY.
Vì vậy phải thêm vào TOP (n)
Code sẽ không được sắp xếp.

Code: Select all

SELECT T.id, T.machungtu, T.sophieu, T.ngaythang, .... 
        INTO #phatsinh From (SELECT dbo.T_thuchi.id, machungtu, sophieu, ngaythang,.... FROM dbo.Tables1 WHERE (.....) 
 UNION ALL SELECT dbo.T_thuchi.id, machungtu, sophieu, ngaythang,  FROM dbo.Tables2 WHERE (....)
)T Order By ngaythang, machungtu DESC, sophieu
code được sắp xếp nhờ vào TOP

Code: Select all

SELECT TOP (100) T.id, T.machungtu, T.sophieu, T.ngaythang, .... 
        INTO #phatsinh From (SELECT dbo.T_thuchi.id, machungtu, sophieu, ngaythang,.... FROM dbo.Tables1 WHERE (.....) 
 UNION ALL SELECT dbo.T_thuchi.id, machungtu, sophieu, ngaythang,  FROM dbo.Tables2 WHERE (....)
)T Order By ngaythang, machungtu DESC, sophieu
==> Bảng tạm #phatsinh sẽ được sắp xếp theo mệnh đề ORDERBY
Post Reply

Return to “Ứng dụng Quản lý và Cơ sở dữ liệu”