1. Xem xét đoạn SQL Script sau:
create table xxx (i int identity, a varchar(3)) go declare @txt varchar(255) set @txt = 'Question' select @txt = isnull (a, '?') from xxx order by i insert xxx values ('of') insert xxx values ('the') insert xxx values ('day') select @txt = @txt + ' ' + a from xxx order by i select @txt
Ban đầu tôi nghĩ kết quả chung cuộc là '? of the day', nhưng câu trả lời là 'Question of the day'. Lý do là nếu câu lệnh không trả về giá trị, nó sẽ giữ nguyên giá trị ban đầu
Tham khảo: http://msdn.microsoft.com/en-us/library/ms187330.aspx
2. Khi sử dụng count
- Nếu count(*): nó sẽ đếm những cột có giá trị NULL
- nếu count(tên cột) nó sẽ không đếm những cột có giá trị NULL
3. Khi so sánh với giá trị NULL, cần nhớ về SET ANSI_NULLS.
http://technet.microsoft.com/en-us/library/ms191270(v=sql.105).aspx
0 comments:
Post a Comment