0

我有person_content下一列的表格:

  • person_id INT
  • content_id INT
  • is_star BOOL

我需要使用 SphinxQL选择所有与 N 以上相关content_ids或有标志的人。is_star

我的问题的第一部分可以使用COUNT,GROUP BY和来解决HAVING

SELECT person_id, COUNT(DISTINCT content_id) as t
FROM person_content
GROUP BY person_id HAVING t > N;

is_star是否可以在请求中添加条件?或者,例如,以某种方式添加is_star * Nt?

4

1 回答 1

0

如果我理解正确,你想要那些t > NORis_star为真的。如果是这样,我认为这应该适合你:

SELECT person_id, COUNT(DISTINCT content_id) as t, is_star
FROM person_content
GROUP BY person_id HAVING t > N or is_star;

having子句中的任何内容都必须是您的选择语句中的选定列。

于 2014-11-23T17:14:51.957 回答