0
我试图过滤具有与整个组相同的外部ID的行。 (意思是说,col1 ='foo'和col1 ='bar'将适用于整个组,并且只会返回col1具有'foo'和'bar'的行的外部ID)SQL - 使用与组相同的外键过滤行
我有表与综合浏览量。每个综合浏览量都包含其网址,并且是用户会话的一部分。我只需要过滤仅包含一些字词的浏览量的会话。 假设我想过滤用户访问'/ basket-step-1'和'/ basket-finish'的会话。 (它也必须与否定,即访问步骤1,但没有访问完成)
我不能简单地使用JOIN,然后WHERE在pageview.url因为一个pageview永远不能包含多个网址。
像这样在理论上将工作:
SELECT * FROM session WHERE id IN
(
SELECT session_id FROM pageview
GROUP BY session_id
HAVING array_agg(url) ILIKE '%step-1%' AND ILIKE '%finish%'
)
但是,你不能在HAVING使用ILIKE并很可能会相当缓慢。我现在不知道如何创建此查询。
多么不直观的解决方案!谢谢。 –