쿼리문으로 각각 합을 가져올려고 하는데요 채택완료

6년 전 조회 4,042

to_chan테이블에 neo컬럼에 있는 같은값을 수를 가져올려고 합니다

 

밑에 쿼리문으로 하면 총합만 가져와서

$sql = "SELECT count(neo) as cnt FROM to_chan WHERE neo=' ".$neo." ' "; 
$neo = sql_fetch($sql); 
$neo ['cnt']; 

이렇게 값을 정해주서 불러오면 잘 가져오는데 너무 길어서 좀더 간결하게 할수는 없을까요? 
$sql = "SELECT count(neo) as cnt FROM to_chan WHERE neo='아스카' "; 
$neo = sql_fetch($sql); 
$neo ['cnt']; 

$sql = "SELECT count(neo) as cnt FROM to_chan WHERE neo='신지' "; 
$neo1 = sql_fetch($sql); 
$neo1 ['cnt'];

 

$sql = "SELECT count(neo) as cnt FROM to_chan WHERE neo='에바' "; 
$neo2 = sql_fetch($sql); 
$neo2 ['cnt'];

등등

답변 3개

채택된 답변
+20 포인트

SELECT neo, count(neo) as cnt FROM to_chan group by neo

이렇게 하면 각 neo 별로 cnt 값을 가져올수 있습니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

친절한 답변 감사합니다..group by 를 사용했는데 안되었는데 아이키스님이 올려주신 쿼리로 해보니 잘되네요..아무래도 제가 실수를 하거 같네요..

댓글을 작성하려면 로그인이 필요합니다.

eyekiss 님의 글로 하면 해결됩니다.

 

https://extbrain.tistory.com/56

 

그룹핑하여 카운트할때 사용하고

 

그루핑에 조건을 걸때는 

 

having 을 사용하면 됩니다.

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

플래토님 친절한 설명 그리고 링크까지 감사합니다..

댓글을 작성하려면 로그인이 필요합니다.

SELECT count(neo) as cnt FROM to_chan WHERE neo IN ('아스카','신지','에바');

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

플라이님 친절한 답변 감사합니다...

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고