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

Làm cách nào để thiết lập một trường được tính toán đơn giản trong SQL Server?

ALTER TABLE ACCOUNT_TABLE 
ADD ACCT_NUMBER AS MAIN_ACCT+'-'+GROUP_ACCT+'-'+SUB_ACCT PERSISTED

Điều này sẽ duy trì một cột được tính toán và có thể hoạt động tốt hơn trong các lựa chọn so với một phép tính trong chế độ xem hoặc UDF nếu bạn có một số lượng lớn các bản ghi (khi quá trình tạo ban đầu của cột đã xảy ra, điều này có thể rất chậm và có thể xảy ra trong thời gian sử dụng thấp ). Nó sẽ làm chậm quá trình chèn và cập nhật. Thông thường, tôi thấy người dùng dễ dàng chấp nhận việc chèn hoặc cập nhật chậm hơn là chậm trễ trong một lựa chọn trừ khi bạn gặp sự cố khóa.

Phương pháp tốt nhất để làm điều này sẽ phụ thuộc rất nhiều vào cách sử dụng của bạn và loại hiệu suất bạn cần. Nếu bạn không có nhiều bản ghi hoặc nếu cột được tính toán sẽ không được gọi thường xuyên, bạn có thể không muốn một cột duy trì, nhưng nếu bạn thường xuyên chạy báo cáo với tất cả các bản ghi trong năm hoặc các tập hợp lớn khác dữ liệu, bạn có thể thấy cột được tính toán liên tục hoạt động tốt hơn cho bạn. Như với bất kỳ nhiệm vụ nào có tính chất này, cách duy nhất để biết điều gì hiệu quả nhất trong tình huống của bạn là kiểm tra.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Truy vấn Sql để chèn ngày giờ trong SQL Server

  2. Sử dụng hợp lý IsNULL và Coalesce

  3. làm thế nào để chỉ hiển thị các hàng chẵn hoặc lẻ trong sql server 2008?

  4. SQL SERVER - Hiểu cách MIN (văn bản) hoạt động

  5. datetime thành totalminute tính bằng sql