У меня есть запрос MySQL, подобный этому:
SELECT *, SUM(...some SQL removed for brevety) AS Occurrences FROM some_table AS q
WHERE criterion="value" GROUP BY q.P_id ORDER BY Occurrences DESC LIMIT 10;
Я хочу ограничить результаты строками, где вхождения> 0. Это кажется мне очень простым, но я не могу заставить его работать. Независимо от того, что я пытаюсь сделать, ГДЕ или ХЕЙВИНГ, всякий раз, когда я пытаюсь добавить это ограничение, я не получаю НИКАКИХ РЯДОВ взамен. Я уверен, что в моей таблице есть данные, которые должны быть возвращены. Кто-нибудь знает, как выполнить то, что я делаю?
Я пробовал это, но это все еще не работает. Какие-нибудь идеи, почему это все еще не будет работать?
SELECT *, SUM(...some SQL removed for brevety) AS Occurrences FROM some_table AS q
WHERE criterion="value" HAVING SUM(...some SQL removed for brevety)>0 GROUP BY q.P_id ORDER BY Occurrences DESC LIMIT 10;