2010-08-04 6 views
2

안녕하세요 다시 stackoverflow 사람들입니다. 불필요한 단계가있는 루틴을 가지고 있습니다. 갤러리에서 모든 이미지를 가져오고 페이지 당 특정 이미지 수를 제한한다고 가정 해 보겠습니다.SQL 직접 테이블의 행 수를 얻으려면

$db = PDO object 
$start = (pagenum x images per page) 
$limit = (images per page) 
$itemsdata = $db->query("SELECT id,name FROM gallery LIMIT $start,$limit")->fetchAll(); 
$numitems = $db->query("SELECT id FROM gallery")->rowCount(); 

$imgsdata은 예를 들어 갤러리의 모든 이미지의 배열입니다. $numimgs은 갤러리에있는 이미지 수입니다.

(예 < < 1 2 3 4 >>)

내 원한은

$numimgs 페이지 번호를 생성 할 필요가있을 때, 배열의 각 이미지에 foreach 루프를 할 $imgsdata을 필요가있다 $db->query("SELECT id FROM gallery")->rowCount(); 완전히 속임수 같은 느낌이 들지만, 테이블에 행 번호를 얻는 직접적인 방법이 아닌 것입니까? SELECT gallery.Rows과 같은 것입니까?

p.s. 현재 SQLite를 사용하고 있지만 MySQL과 PostgreSQL에서도 필요합니다.

+1

테이블 – jle

+0

에서 셀렉트 카운트 (*)를 얻었습니다. 그게 아주 간단합니다. 잘 자기 가르치기 위해 얻은 것입니다 ... –

+0

어쨌든 전화 한 번호는 무엇입니까? (<< 1 2 3 4 >)? –

답변

1

이렇게하면 행의 수를 말할 것이다 :

SELECT COUNT(*) FROM gallery 
+0

첫 번째 : –

1

간단한 수() 집계 함수가 너무 빨리

Select count(*) from table 
1

나를 행의 수를 반환합니다!

SELECT COUNT(*) FROM gallery 

예, 이것은 MySQL, SQLite 및 PostgreSQL에서 동일하게 작동합니다.

+0

: 예. 공동 작업! –

관련 문제