所以我有一个大泄漏的AOL搜索查询数据库(2006) - 让我们称之为QD - 和一个包含一列的表,其中包含我在每个查询中寻找的所有关键字。
我正在尝试做类似的事情:
SELECT
keywords.keywords AS Keyword,
COUNT(QD.query) AS Amount
FROM QD, keywords
WHERE QD.query LIKE ('%' keywords.keywords '%' )
GROUP BY keywords.keywords
ORDER BY COUNT(QD.query) DESC;
但那不知何故不起作用。 有什么想法吗?
答案 0 :(得分:1)
Oracle版本:
SELECT
k.keywords AS Keyword,
count(k.keywords) AS Amount
FROM keywords AS k
JOIN QD AS q
ON q.query LIKE ('%' || t2.kwords || '%')
GROUP BY k.keywords
ORDER BY count(k.keywords) DESC;
请谨慎对待案例,Table
不是table
,如果您使用"table"
,那么您无法使用"
周围。(或者至少看起来像那样)
MySQL one,:
好吧,我认为我得到了它,使用了JOIN:
查询1 :
SELECT
k.keywords AS Keyword,
count(*) AS Amount
FROM keywords k
INNER JOIN QD q
ON q.query LIKE CONCAT('%', k.keywords, '%')
GROUP BY k.keywords
ORDER BY count(*) DESC
<强> Results 强>:
| keywords | Amount |
|-----------|--------|
| at | 34 |
| Donec | 11 |
| quis | 10 |
| amet | 9 |
| vulputate | 5 |
| ornare | 4 |
| eros | 2 |