Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Bảo quản ORDER BY trong CHỌN VÀO

Tôi biết điều này hơi cũ, nhưng tôi cần phải làm điều gì đó tương tự. Tôi muốn chèn nội dung của bảng này vào bảng khác, nhưng theo một thứ tự ngẫu nhiên. Tôi thấy rằng tôi có thể làm điều này bằng cách sử dụng select top norder by newid() . Không có 'top n', thứ tự không được giữ nguyên và bảng thứ hai có các hàng theo thứ tự như bảng thứ nhất. Tuy nhiên, với 'top n', thứ tự (ngẫu nhiên trong trường hợp của tôi) được giữ nguyên. Tôi đã sử dụng giá trị 'n' lớn hơn số hàng. Vì vậy, truy vấn của tôi dọc theo dòng:

insert Table2 (T2Col1, T2Col2)
  select top 10000 T1Col1, T1Col2
  from Table1
  order by newid()


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sử dụng OBJECTPROPERTY () để Tìm hiểu xem một Đối tượng có phải là Ràng buộc KIỂM TRA trong SQL Server hay không

  2. Cách thực hiện một truy vấn chuyển qua CHÈN trong SQL Server

  3. Chuyển một varchar chứa đầy các giá trị được phân tách bằng dấu phẩy vào hàm SQL Server IN

  4. Cách thích hợp để triển khai ràng buộc duy nhất cho phép nhiều giá trị NULL trong SQL Server

  5. Quản lý tệp MDF trong SQL Server 2019