我需要根据比较列中的值来查询某个数据。 请参考下表。
Order_Number File_Name
123 100-200-123.pdf
234 200-300-234.pdf
345 500-600-556.pdf
现在我想选择Order_Number,其中Order_Number不是File_Name的一部分。我想在Oracle DB中运行查询。
我试过了。
select Order_Number from table_name where File_Name not like '%&&Order_Number%'
显然它没有用,并给出了一个对话框,可以在sql developer中输入order_number的值。
简而言之,我的查询应该只返回345.任何帮助将不胜感激。
答案 0 :(得分:3)
你可以这样做:
select Order_Number from table_name where File_Name not like '%' || order_number || '%'
答案 1 :(得分:1)
您可以使用:
SELECT Order_Number
FROM tableA
WHERE File_Name NOT LIKE '%' || Order_Number || '%';
在此,您将为每一行查看Order_Number
中的值。你看看File_Name
中是否存在该值。通过在它之前和之后使用%
,您可以允许其他值前后。
例如,如果您使用WHERE File_Name NOT LIKE Order_Number || '%'
,那么您只会查看以File_Names
开头的Order_Number
。