我有一张有客户订单的桌子。它可以包含客户的多条记录。我有另一个表,其中包含有关客户的详细信息或特征:年龄、地区、性别等。该表每个表有多个记录。但每个客户功能只有一条记录。喜欢
cust_id, feature_id, value ;
cust_id, feature_id, vaule;
cust_id, feature_id, value.
...
...
etc.
cust_id 和 feature_id 是表的主键。例如,性别的 feature_id 是 200,年龄的 feature_id 是 201,地区的 feature_id 是 230 等
现在,我创建了一个报告,该报告必须包含某些人口统计中的客户总数。所以我写了以下查询:
SELECT *
FROM CUST_ORDER co
JOIN FEATURE_VALUES fv
ON fv.CUST_ID = co.CUST_ID
WHERE ( fv.FEATURE_ID = 200
AND fv.VALUE = 1 )
AND ( fv.FEATURE_ID = 201
AND fv.VALUE > 25 )
AND ( fv.FEATURE_ID = 230
AND fv.VALUE > 3 )
这不会返回任何记录,我知道为什么但不知道如何获得结果。将不胜感激任何帮助或方向。
这是一些示例数据
1 200 1
1 201 40
1 230 3
2 200 2
2 201 27
2 230 2
etc
谢谢