SQL 쿼리를 이용한 드루팔 컨텐츠의 갯수를 확인할 때
참고 - http://api.drupal.org/api/function/db_result/6
Count rows in a table using db_result:
$countrows = db_result(db_query("SELECT count(*) FROM {my_table}"));
드루팔 API인 db_result 함수를 이용하면 count(1) 등이 손쉽게 얻어진다.
사용법이 너무나도 당연한 팁이지만,
간혹 다른 함수를 사용해서 갯수를 세려고 하면 애를 먹을 수도 있기에 메모한다.


댓글
2 comments postedㅇㅇㄴㄴㄴㅇㅇㄴㄴ
간혹 코딩 실수로 쿼리가 무한루프에 걸리는 경우도 있다.
예를 들어 db_query 함수를 foreach나 while과 동시에 쓰는 경우에는
DB 커서의 재초기화가 항상 발생해서 무한 루프가 생긴다.
이와 관련된 좋은 예제가 있다. 정상적인 소스다.
$nids = array();
$result = db_query('SELECT nid FROM vault_lm_paypal_subscribers');
while ( $row = db_fetch_array($result) ) {
$nids[] = $row['nid'];
}
return $nids;
참고 - http://drupal.org/node/496906
SOLVED - db_fetch_array only gets 1 row; how do you get ALL rows?