0

最近Deleted、テーブルに列を追加し、where 句を追加したかったのですが、結果が得られなくなりました (deleted列を追加する前に結果が返されました) 。

SELECT 
    tblEquipment.*, tblUsers.* 
FROM 
    tblEquipment 
INNER JOIN 
    tblUsers ON tblEquipment.UserID = tblUsers.ID 
WHERE  
    (UPPER(tblUsers.Dept) = 'ASPIRE' OR UPPER(tblUsers.Dept) = 'DEVELOPMENT') 
    AND (AssetType = 'WORKSTATION' OR AssetType = 'LAPTOP') 
    AND (tblEquipment.Deleted != 1)  
ORDER BY 
    Username

助けてくれてありがとう

4

2 に答える 2

2

DeletedNULLすべてのレコードの場合、条件は次のようになります。

AND (tblEquipment.Deleted != 1 OR tblEquipment.Deleted IS NULL)  
于 2013-05-08T16:32:02.837 に答える
1

新しい列にデータを入力していないと仮定しているため、すべてのレコードの値は NULL です。RDMS が NULL を評価する方法に応じて、

tblEquipment.Deleted != 1

おそらく犯人です。

アップデート:

以下はあなたの問題を解決するはずです:

ISNULL(tblEquipment.Deleted,0) != 1
于 2013-05-08T16:29:56.793 に答える