Как вернуть количество строк в подзапросе mysql

У меня есть следующий запрос SQL:

SELECT games.id, games.GameTitle FROM games 
WHERE EXISTS (
              SELECT filename FROM banners 
              WHERE banners.keyvalue = games.id 
                AND banners.filename LIKE '%front%'
             )

что не совсем правильно для моего использования

что я хотел бы что-то вроде:

SELECT games.id, games.GameTitle 
FROM games WHERE EXISTS (
    COUNT(SELECT filename FROM banners 
    WHERE banners.keyvalue = games.id AND banners.filename LIKE '%front%') > 1
    )

т.е. выбирается только когда подзапрос извлекает более 1 строки.

2 ответа

Решение

Просто так:

SELECT games.id, games.GameTitle 
FROM games 
WHERE (
    SELECT COUNT(filename)
    FROM banners
    WHERE banners.keyvalue = games.id AND banners.filename LIKE '%front%'
) > 1
SELECT games.id, games.GameTitle 
    FROM games 
    WHERE EXISTS (SELECT COUNT(filename) 
                      FROM banners 
                      WHERE banners.keyvalue = games.id 
                          AND banners.filename LIKE '%front%'
                      HAVING COUNT(filename)>1)
Другие вопросы по тегам