반응형

php 쿼리를하다가

등록된 db에서 그룹별로 묶어서 그룹수와 그룹별 데이터갯수를 구해야했다

통계 그래프로 나타내야해서 수를 카운트하는게 중요했는데

일단 그룹별 총 수는

select count(*) as cnt, db_group from [] where [] group by db_group 으로 

뽑아낼수있었고 그래프에다가는 배열로 담아서 뿌려줫다

그룹의수는 이쿼리에서 그냥 카운트해도 되기는하는데

select count(cnt) as cnt, db_type
                            from ( select count(*) as cnt, db_count, db_type from {$tbl_x} where wr_id = '{$list[$i]['wr_id']}' group by db_count, db_type ) as a
                        where (1) group by db_type order by db_type desc

이건 실제 적용한 코드인데 몇개 더 추가되긴했지만 이런식으로도 각각 수를 구했다.

이중쿼리,,인가 이것도 익숙해져야하는데 가끔씩만 쓰다보니 할때마다 헷갈리네

 

728x90
반응형
반응형

$sql = "select * from g5_board_new
                where (1) 
                    and (bo_table IN ('{$my_circle_sql}') or (bo_table NOT IN ('{$my_circle_sql}') 

                    and wr_parent IN (select wr_id from g5_board_new where (mb_id = '{$member['mb_id']}' ))

                    and (comment_chk = 'a' or comment_chk = 'r') )) 
                    and delete_chk != 'Y' 
            order by bn_datetime desc ";
$res = sql_query($sql);

 

이번에 다중쿼리를 하는데 조건이 중복되고 여러개여서 상당히 귀찮았다.

오류가 자꾸 났었는데 이유는 where절 안에 쿼리 조건문에서 = 으로 찾으려해서?

IN으로 바꿔주니 굴러가긴하는데 살짝 찝찝~

728x90
반응형

+ Recent posts