Tôi có một dự án có thể sử dụng SQL Server hoặc MS Access làm kho dữ liệu. Trong một câu lệnh SELECT, tôi phải thực hiện một hoạt động liên hiệp trên một cột duy nhất và một giá trị duy nhất, như thế này:Hàm COALESCE, IFNULL hoặc NZ() có thể được sử dụng trong SQL Server và MS Access
SELECT COALESCE([Amount], 0) FROM PaymentsDue;
Tôi muốn viết một câu lệnh SQL duy nhất mà sẽ thực hiện một cách chính xác trong cả SQL Server và MS Access . Phiên bản SQL Server được quan tâm ngay lập tức là năm 2008, mặc dù một giải pháp áp dụng trên các phiên bản sẽ được ưu tiên hơn.
Trước đó ngày hôm nay, ai đó đã có thể to show me an SQL trick cho phép tôi sử dụng một câu lệnh SELECT để có hiệu quả CAST từ DATETIME đến DATE. Tôi đã tự hỏi nếu có ai có một thủ thuật tương tự để thực hiện một hoạt động (ví dụ, IFNULL hoặc NZ) hoạt động theo cách có thể được áp dụng cho cả hai SQL Server và MS Access?
Phần 'Amount = 0' sẽ không hoạt động trong Access. Nó phải là '0 AS Amount'. –
Tôi đã đi với một biến thể của giải pháp này. Nhu cầu trước mắt của tôi là thực hiện một 'INSERT. . . LỰA CHỌN. . .' và tôi đơn giản lặp lại câu lệnh hai lần, một lần cho NULL và một lần cho các hàng khác. –