Как удалить один столбец в результате запроса MySQL? - PullRequest
5 голосов
/ 08 июля 2010

Пример:

SELECT `film_id`,COUNT(film_id) AS COUNT FROM films_genres AS FilmsGenre   
WHERE genre_id In (4)  
GROUP BY film_id,COUNT 
HAVING COUNT = 1 

возврат:

film_id |  COUNT
7            1   
6            1

Но я хочу, чтобы он вернулся:

film_id
  7
  6

Как мне вернуть только 1 колонну?

Ответы [ 3 ]

12 голосов
/ 08 июля 2010

Чтобы сделать это, просто переместите «COUNT(film_id)». Ваша оговорка HAVING сделает всю работу за вас.

SELECT `film_id` FROM films_genres AS FilmsGenre
WHERE genre_id In (4)
GROUP BY anime_id,film_id
HAVING COUNT(film_id) = 1
1 голос
/ 08 июля 2010

или используйте производную таблицу

SELECT film_id from
(
SELECT `film_id`,COUNT(film_id) AS COUNT FROM films_genres AS FilmsGenre    
WHERE genre_id In (4)   
GROUP BY anime_id,COUNT  
HAVING COUNT = 1  
) as t
1 голос
/ 08 июля 2010

Это не формулируется как вопрос CakePHP, хотя он помечен как таковой.

Однако в CakePHP:

$this->FilmGenre->find('list',array('fields'=>array('film_id','film_id','anime_id')));

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...