2014-09-08 1 views
-1

다음 쿼리가 있습니다. 얼마나 많은 항목/행이 반환되는지 계산해야하고이 쿼리가 실행되는 PHP 페이지에 해당 숫자가 표시되어야합니다.MySQL, 쿼리 수 결과 및 PHP 페이지 표시

$query1 = " 
SELECT HD_TICKET.ID as ID, 
HD_TICKET.TITLE as Title, 
HD_STATUS.NAME AS Status, 
HD_PRIORITY.NAME AS Priority, 
HD_TICKET.CREATED as Created, 
HD_TICKET.MODIFIED as Modified, 
HD_TICKET.CUSTOM_FIELD_VALUE10 as SLA, 
S.FULL_NAME as Submitter, 
O.FULL_NAME as Owner, 
HD_TICKET.CUSTOM_FIELD_VALUE0 as Type 
FROM HD_TICKET 
JOIN HD_STATUS ON (HD_STATUS.ID = HD_TICKET.HD_STATUS_ID) 
JOIN HD_PRIORITY ON (HD_PRIORITY.ID = HD_TICKET.HD_PRIORITY_ID) 
LEFT JOIN USER S ON (S.ID = HD_TICKET.SUBMITTER_ID) 
LEFT JOIN USER O ON (O.ID = HD_TICKET.OWNER_ID) 
WHERE (HD_TICKET.HD_QUEUE_ID = $mainQueueID) AND 
(HD_STATUS.NAME like '%Open%') 
ORDER BY ID DESC 
"; 

가능한가, 나는 MySQL 친절하지 않다. 기본적으로 내가 카운트 수를 출력 할 수 있다면 PHP/HTML/CSS로 플래쉬하기 위해 테이블에 끌어다 놓을 수 있습니다.

감사합니다. 사전에 도움을 주셔서 감사합니다.

+0

가져올 때 모든 결과를 배열에 넣은 다음'count ($ rows_array) '를 사용하십시오. – Barmar

+0

$ result1 = mysql_query ($ query1); 내가 이것들을 넣는 곳이다. 도움이 필요하다. 페이지의 HTML에 숫자 (총 숫자)가 표시된다. ... – user3653189

답변

2

mysql 확장 프로그램을 사용하는 경우 mysql_num_rows()과 함께 결과 행 수를 얻을 수 있습니다.

$row_count = mysql_num_rows($result1); 
echo "There are $row_count results</b>"; 
while ($row = mysql_fetch_assoc($result1) { 
    // Display row of results 
} 

결과를 표시하지 않으려면 쿼리를 단순화해야합니다. 리턴 할 컬럼을 지정할 필요가 없으며 결과를 주. 할 필요가 없습니다.

$query = "SELECT COUNT(*) as cnt 
      FROM HD_TICKET 
      JOIN HD_STATUS ON (HD_STATUS.ID = HD_TICKET.HD_STATUS_ID) 
      JOIN HD_PRIORITY ON (HD_PRIORITY.ID = HD_TICKET.HD_PRIORITY_ID) 
      LEFT JOIN USER S ON (S.ID = HD_TICKET.SUBMITTER_ID) 
      LEFT JOIN USER O ON (O.ID = HD_TICKET.OWNER_ID) 
      WHERE (HD_TICKET.HD_QUEUE_ID = $mainQueueID) AND 
      (HD_STATUS.NAME like '%Open%')"; 
$result1 = mysql_query($query); 
$row = mysql_fetch_assoc($result1); 
$row_count = $row['cnt']; 
echo "$row_count results"; 
+0

그게 전부 작동하지만, 출력에 반복된다. 예를 들어 8 개를 보여 주지만 8 번 보여줍니다. 결과를 한 번만 표시하는 방법에 대한 아이디어가 있습니까? 도와 주셔서 감사합니다. 정말 고맙습니다. 매일 새로운 것을 배웁니다 :) – user3653189

+0

루프 밖에서해야합니다. – Barmar

+0

아 좋아,이게 바로 행을 출력 할까? 나는 행을 나열하는 대신 "8 Results"라고 말하고 싶습니다. 나는 아마도이 권리를 이해하지 못할 것이다. ( – user3653189