[英]Exclude records with specific value '*' SQL SELECT
我正在准備遷移到基於庫存的零售商店的新數據庫系統。 在當前已停用的數據庫產品中,記錄中添加了前導*。
業主不希望將停用產品帶入新系統,因此,這個領先的*是我唯一可以使用的參考點。
我需要創建一個SELECT查詢,該查詢將排除具有前導*的產品,但無濟於事。
我已經嘗試了以下
SELECT prdcod
FROM prdtbl
WHERE prodcod<>'*%';
返回的前10個結果是:
我懷疑我可能無法將*用作排除因素
任何想法都會被加深
嘗試這個
SELECT prdcod
FROM prdtbl
WHERE prodcod not like '*%';
這可以用很多方法來完成。
使用NOT LIKE
SELECT prdcod
FROM prdtbl
WHERE prodcod NOT LIKE '*%'
使用LEFT/SUBSTRING
SELECT prdcod
FROM prdtbl
WHERE LEFT(prodcod,1) <> '*' -- SUBSTRING(prodcod from 1 for 1) <> '*'
注意:如果在prodcod
列上有Index
,則“ Not Like
是首選方法
SELECT prdcod
FROM prdtbl
WHERE prodcod NOT LIKE '*%';
而不是使用“ <>”運算符,而應使用“不喜歡”:
Select prdcod
From prdtbl
Where prodcod not like '*%';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.