2010-07-08 6 views
5

उदाहरण:एक MySQL क्वेरी के परिणामस्वरूप एक कॉलम कैसे हटाया जा सकता है?

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 colomn कैसे वापसी करते हैं?

+0

प्रणय और madhiva – meotimdihia

उत्तर

12

ऐसा करने के लिए, बस अपना "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

'anime_id द्वारा समूह, COUNT (film_id) द्वारा उत्तर के उपयोग' मैं कहना चाहता हूँ ... – Wrikken

+0

मुझे लगता है कि इससे कोई फर्क नहीं पड़ता क्योंकि लक्ष्य गिनती क्षेत्र को चुनने के लिए चुनना है और पंक्तियों का चयन करना है जहां film_id == 1 –

+0

बहुत बहुत धन्यवाद – meotimdihia

1

यह केकपीएचपी प्रश्न के रूप में phrased नहीं है, हालांकि इसे इस तरह टैग किया गया है।

हालांकि, CakePHP में:

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

1

या बनाने के व्युत्पन्न तालिका

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 
+0

बहुत बहुत धन्यवाद nadguvanan – meotimdihia

संबंधित मुद्दे