我是 SQL 新手 - 我已经浏览了这些帖子,但无法完全解决我的问题的答案,抱歉。我正在尝试做我认为应该是一个简单的查询,在我的 join 子句中使用 where/ 或语句。
问题是我似乎得到了重复。这是我正在使用的代码:
select A.[AuctionId], AA.attribute_id
from [auction] A
left join [auction_attribute] AA
on AA.auction_id = A.AuctionId
where AA.attribute_id = 127
or (AA.attribute_id = 132 and AA.text_data = 'USABLE')
我想获取属性 ID 为 127 的所有记录,并且记录的属性 132 需要具有关联的 text_data 'USABLE',如果这有意义吗?一条记录可以有多个属性 ID,因此我想获取所有 127,其中与其 132 关联的 text_data 也是“可用”。我最初使用子查询完成了查询,但我认为这将是一种更有效的方法,只要我能做对!
以上内容目前正在返回重复记录,如果我用 'and' 替换 'or' 我没有得到任何记录。有人可以帮忙吗??