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

Sql Server 2008:Lỗi lạ trong quy trình được lưu trữ

Bạn không thể sử dụng một biến trong thứ tự order by mệnh đề. Thay vào đó, bạn phải làm điều gì đó như:

order by (case when @groupBy = 'VRNOA' then VRNOA
               . . .
          end)

Tuy nhiên, hãy cẩn thận vì nếu các cột thuộc các loại khác nhau, những điều không mong muốn có thể xảy ra hoặc có thể gặp lỗi khác. (Có một giải pháp thay thế để sử dụng SQL động, nhưng tôi không khuyên bạn nên sử dụng điều đó.)

Ngoài ra, tên @groupby là một chút sai lầm. "Grouping" là một thuật ngữ SQL tương đương với "tổng hợp". Sẽ không @OrderBy hoặc @SortBy thích hợp hơn?



  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 NOLOCK Hint trong EF4?

  2. Trục động T-SQL

  3. Trả về danh sách các trình kích hoạt trong SQL Server

  4. Tạo cơ sở dữ liệu mới từ bản sao lưu của một Cơ sở dữ liệu khác trên cùng một máy chủ?

  5. 3 cách chuyển đổi số nguyên thành số thập phân trong SQL Server