tôi đang cố gắng để tạo ra một cột tính toán tiếp tục tồn tại sử dụng biểu HỒ SƠ:Tại sao biểu thức CASE của tôi không xác định?
ALTER TABLE dbo.Calendar ADD PreviousDate AS
case WHEN [Date]>'20100101' THEN [Date]
ELSE NULL
END PERSISTED
MSDN nói rõ rằng CASE là xác định, here
Tuy nhiên, tôi nhận được một lỗi:
Msg 4936, Level 16, State 1, Line 1 Computed column 'PreviousDate' in table 'Calendar' cannot be persisted because the column is non-deterministic.
Tất nhiên, tôi có thể tạo ra một UDF vô hướng và khai báo một cách rõ ràng nó như là xác định, nhưng có cách nào đơn giản hơn không? Tôi đã ở giữa nhận gói dịch vụ mới nhất. Cảm ơn.
Cũ câu hỏi, tôi biết, nhưng làm thế nào để bạn đề nghị * "tạo ra một UDF vô hướng và tuyên bố một cách rõ ràng như xác định" * trong SQL Server. Tôi nói với bạn có thể làm như vậy trong Oracle, nhưng tôi chưa bao giờ nhìn thấy một cách trong SQL Server ... – jimbobmcgee