【发布时间】:2015-10-14 15:26:13
【问题描述】:
做了一场噩梦,试图弄清楚如何从表中提取一些数据。
桌子设置好了:
PRODUCTS
---------------
ID - Primary
QuoteID Int
ProductCode VarChar(30)
我正在尝试获取所有没有'01' 产品代码的QuoteID。
我试过了:
Select * from PRODUCTS group by QuoteID order by ProductCode asc
但这一切都错了,因为 ProductCode asc 的值以 1 开头。
我知道将列交换为 Int 会使生活更轻松,但该应用程序依赖于 '01' 而不是 '1' 的值!
如何修改我的查询以产生所需的结果?
【问题讨论】:
-
您没有任何 WHERE 子句。你需要类似
WHERE ProductCode != '01' -
那么同一个
QuoteId值可以出现在多行上,伴随着不同的ProductCode值?否则DISTINCT是从哪里来的? -
你的意思是你想要那些出现在任何行中产品代码不同于
'01'的QuoteIds,还是你的意思是你想要表格中的所有QuoteIds,除了出现在产品代码'01'的任何行上的那些? -
一个 QuoteID 会出现很多次,每个都有不同的 ProductCode。我正在尝试查找所有没有针对它存储 ProductCode 01 的 QuoteID,但相同的 QuoteID 也会存储我不需要的其他 ProductCode。