我需要一个 SQL 2008 查询,它返回所有拥有 > 1 个用户字段记录且链接到他们的相同 USERFIELDUUID 的消费者——换句话说,所有那些拥有重复用户字段记录的消费者。
记录中的相关字段CONSUMER_USER_FIELD
:
CONSUMER_USER_FIELD_UUID - primary key
USERFIELD_UUID
CONSUMER_UUID
记录中的相关字段CONSUMER
:
CONSUMER_UUID - primary key
记录中的相关字段USER_FIELD
:
USERFIELD_UUID - primary key
CONSUMER_UUID
FIELD_NAME
PROMPT
我的代码可以找到所有拥有 >1 CONSUMER_USER_FIELD (CUF) 记录的消费者。我只是在“并且相同的 userfield_uuid 在这些 CUF 记录的 > 1 条上”部分遇到了麻烦。
这是我到目前为止所拥有的:
SELECT c.consumer_uuid
FROM consumer c
INNER JOIN consumer_user_field cuf
ON cuf.consumer_uuid = c.consumer_uuid
WHERE 1 < (SELECT count(user_field_uuid)
FROM consumer_user_field cuf2
WHERE cuf2.consumer_uuid = c.consumer_uuid)
我在正确的轨道上吗?我现在只需要一个 HAVING 子句吗?