sql 注意事項

2021-09-19 17:31:57 字數 512 閱讀 5764

在 oracle <>,!=,~=  都是不等於號的意思。都可以使用。

但是奇怪的是,我想拿出price 不是180000旳商品時:

select id,name,from product where price <> 180000;

執行這個語句是,price null 的記錄不出來,也就是拿不到price 是null的商品,必須使用:

select id,name from product where price<> 180000 or price is null.

測試:select * from test where name<>'xn'。只能查出name非空的記錄。去掉name<>'xn'就可以了,這種寫法有問題。

然後用了 instr(name,'xn')=0 來判斷,如果name非空的話,判斷還是有效的。如果name為空,這個判斷又出問題了,不得已只得採用

instr(concat(name,'xx'),'xn') = 0來判斷,因為就算name為空,當和『xx'連線後,也會不為空的。

SQL 注意事項

選擇表名 配置ctrl 3 能夠select 桌 use nb go 物 storedprocedure dbo sp select 指令碼日期 05 28 2015 21 46 25 set ansi nulls on go set quoted identifier on go create p...

sql 優化注意事項

1.儲存過程比sql語句效率高 儲存過程經過預編譯處理 而sql查詢沒有 2.給表建立索引的字段 常見字段是where 後的條件字段 3.查詢表時使用 nolock 查詢語句不會阻塞 4.不要使用 select from dbo.table 用具體的字段列表代替 不要返回用不到的任何字段。同時避免使...

SQL開發注意事項

不要使用count 列名 或count 常亮 代替 count 說明 count 會統計值為null的行,而count 列 不會統計此列為null值的行。當某一列的值全為null時,count col 的返回結果為0,但sum col 的結果為null,所以使用sum 時需要注意npe問題。使用 i...