【发布时间】:2018-10-15 11:43:05
【问题描述】:
我对数据库查询有非常不同的问题。有一点不同的场景:
我创建了一个包含 3 列的表。它们有 ID、ItemId、TypeId 列。我需要一个计数查询,它应该将 ItemId 和 TypeId 一起计算,但重复的列除外。例如;
Id ItemId TypeId
-- ------ ------
1 1 1 -> count +1
2 1 1 -> ignore
3 1 2 -> count -1
4 1 2 -> ignore
5 1 1 -> count +1
结果数 = 1
最后,如果重复的不同行,计数忽略该行。但是 TypeId 数据针对一个特定的项目发生了变化,它应该增加或减少计数。 TypeId 等于 1 count +=1,等于 2 count -=1。
【问题讨论】:
-
预期的输出是什么?你的 MySQL 服务器版本是多少?
-
MySQL 版本为 8.0,预期输出为 0 或 1。这取决于同一项目的类型。您可能会在我认为的更新帖子中看到我的期望
-
@SUsta 请检查发布的答案。
-
@MadhurBhaiya 他们没有工作,很抱歉没有回复
-
@SUsta 为什么不工作?检查 DB fiddle 演示。