我试图根据条件使用mysql在表之间获取记录。这是我的桌子。
表名:trans_table,它具有两个字段。

item    transaction
-----   -----------
item1   b
item2   b
item3   b
item3   c
item4   d
item5   b


我试图获得仅具有事务b的项目。因此,结果不包含任何其他事务。所需的输出将是这样的

item   transaction
-----  -----------
item1   b
item2   b
item5   b


(因为具有事务c和b以及项目4和item4的事务3不包含事务b)

我尝试了以下查询

1.`select * from trans_tbl where transaction = 'b'`

2.`select item,qty from trans_tbl where item in(select item from trans_table group by    item having count(item)=1);`


通过上述两个查询,我无法获得所需的输出。那么还有其他方法可以做到这一点吗?

最佳答案

尝试这样的事情。它将所有项目组合在一起,并且仅返回以下项目:1.有一个交易,并且2.该交易为“ b”

select item, transaction
from trans_tbl
where transaction = 'b'
group by item, transaction
having count(item) = 1

关于mysql - 如何在表中获取所需的记录?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10556391/

10-16 07:26