如何计算在同一列中具有多个条件的“where”条件的项目

时间:2012-02-17 11:02:24

标签: sqlite count where

我是SQL的新手,我正在使用SQLite为一系列零售商店进行销售分析。

我目前正在尝试计算包含不同类别商品的交易数量。我的数据中的相关列是uniqID(提供事务ID)和类别。每个uniqID对于该事务中的每个项目都有一行,即三个项目的事务将具有三行。每个行都有自己的类别,即:

uniqID类别 103裤子 103裙子 103裙子 104跳线 104裙子

是否可以执行计数功能,该功能可计算包含两个不同类别的唯一交易数量?例如,有多少交易包含裤子和裙子? (在上面的例子中,答案应该是1!)

我尝试了以下内容:

选择count(distinct uniqID),其中category = trousers和category = skirts;

然而,它一直将答案返回为0,我知道这不是真的。任何人都可以建议一种重写查询的方法吗?

非常感谢你的帮助!

2 个答案:

答案 0 :(得分:0)

类别不能同时具有两个不同的值,使用'或'代替'和'。

select count (distinct uniqID) where category = trousers or category = skirts;

答案 1 :(得分:0)

如果有的话,应该是

select count (distinct uniqID) where category = 'trousers' OR category = 'skirts';

由于一行中的类别不能同时具有“裤子”和“裙子”的价值。