【发布时间】:2014-07-11 09:32:12
【问题描述】:
我正在尝试简单地查询数据,
select * from product where (color='blue' or type='suv')
我想要查询中提到的任何具有“颜色”和“类型”的特定数据,但如果我没有提到他的“类型”,那么它将仅从“颜色”获取数据。
例如:
product color type
toyota red suv
honda black
select * from product where (color='blue' or type Is null)
在第二个查询中,它同时返回“toyota”和“honda”。
如果我给出它的“颜色”值,我需要获取产品,然后它只按颜色返回数据,如果我给出它的“颜色”和“类型”值,然后根据这两个值返回数据?
【问题讨论】:
-
需要更多信息。如果您只想要
color = 'blue',则将type排除在where子句之外。反之亦然。 -
-
基本信息必须在question中,而不仅仅是cmets。请编辑您的问题。另外:
In second query it return me both "toyota" and "honda".这与显示的数据相矛盾。请说清楚。最后,答案取决于 表定义 - 在 psql 中为您提供\d product。列可以为 NULL 吗?
标签: python sql postgresql