2, 4, 5, 6 및 8의 ID를 가진 mysql 데이터베이스에 5 개의 행이 있고 id 5를 echo하는 경우 어떻게 행 번호를 출력합니까? 물론 행 3일까요? 나는 데이터베이스의 시작부터 내가 쓴 행까지 모든 행을 세어 행 3을 얻는다.데이터베이스에서 행 수를 계산하고 원하는 행 번호를 반향 출력합니다.
답변
이 테이블에 일부 AUTO_INCREMENT 키를 추가하는 것입니다
SELECT @row_num:[email protected]_num+1 as row_number, id from table inner join (select @row_num:=0) as temp
$pdo = new PDO(....);
$result = $pdo->query($sql)->fetchAll();
foreach($result as $row) {
print_r($row);
}
+1 또한 조인 오버 헤드를 피하려면 JOIN 대신 UNION을 사용하여 변수를 초기화하십시오. SELECT NULL AS row_num, NULL AS id 이중 WHERE (@row_num : = 0) UNION ...'WHERE는 * 불가능한 WHERE *를 생성하므로 행을 반환하지 않지만 변수를 초기화합니다. – Mike
좋아, 나는 약 1 년 동안 PHP를 사용 해왔다. 그래서 나는이 같은 질의를 보지 못했다. 너는 그것을 정확히 되풀이한다고 어떻게 생각하니? –
@Martin L :'@ row_num'은 [사용자 정의 변수] (http://dev.mysql.com/doc/refman/5.5/en/user-variables.html)입니다. 그것은 쿼리에서 동적 인 값을 생성하는데 편리합니다. SELECT @row_num : = @ row_num + 1 AS row_num'을 수행하면 실제 열과 마찬가지로 쿼리의 열 중 하나 인 row_num이 반환됩니다. – Mike
올바른 솔루션을 사용해보십시오, 각 행은 일련 번호를 할당 한 것입니다. 그렇지 않으면 ORDER BY
절이없는 SQL 쿼리가 임의 순서 (즉, ID는 임의의 순서로 반환 될 수 있음)가 보장되지 않으므로 각 ID에 대해 동일한 번호를 얻을 수 있다고 보장 할 수 없습니다.
그렇지 않으면 Andrej L의 솔루션이 올바른 것입니다.
데이터베이스를 처음 만들 때 ID 열을 auto_increment로 만들었습니다. –
달성하고자하는 것에 대한 더 나은 설명이 도움이 될 것입니다. 현재 당신이 필요로하는 계산을하는 진짜 이유는 없습니다. – Crack
사용하기 전에 정렬 순서대로 이보다 몇 줄 앞의 행을 계산할 수 없습니까? ID 2와 3 만 행이 계산됩니다이 경우
COUNT(*) FROM table WHERE id < ?
, 당신은 1부터 시작하는 인덱스를 사용하는 경우 결과는 2. 그래서, 그 하나를 추가하고 당신이 답을 가지고있다.
나는 이것을 줄 것이고 그 일이 벌어지고 있음을 알려줄 것이다. –
- 1. 행 수를 계산하고 표시하는 방법
- 2. mysql 테이블의 특정 행 수를
- 3. PHP - POST 변수를 반향 출력합니다.
- 4. 각 그룹의 행 수를 계산하십시오.
- 5. 목록보기의 행 번호를 표시하는 방법
- 6. 텍스트 파일의 행 수를
- 7. MySQL 데이터베이스에서 행 삭제
- 8. 데이터베이스에서 행 선택 strlen
- 9. 데이터베이스에서 행 삭제하기
- 10. MS Access에서 행 번호를 반환합니다.
- 11. oracle 데이터베이스에서 id 당 행 수를 어떻게 제한합니까?
- 12. UITableView에서 행 수를 얻는 방법
- 13. sqlite 테이블의 최대 행 수를
- 14. DataGrid의 총 행 수를 계산하십시오.
- 15. 테이블의 총 행 수를 반환하십시오.
- 16. asp.net에서 중계기 행 수를 결정하십시오.
- 17. iphone coredata의 행 수를 카운트
- 18. NpgsqlDataReader에서 행 수를 얻는 방법
- 19. 고유 열이있는 행 수를 계산하십시오.
- 20. RitchTextField에서 가능한 행 수를 계산하십시오.
- 21. JasperReports의 행 수를 제어하는 방법
- 22. DataGrid에서 보이는 행 수를 계산하십시오.
- 23. mysql을 사용하여 테이블의 행 수를 계산
- 24. SQL 직접 테이블의 행 수를 얻으려면
- 25. MySQL과 PHP를 사용하여 데이터베이스에서 여러 행 출력하기
- 26. 여러 데이터베이스에서 테이블의 총 행 수 찾기
- 27. 다중 행 텍스트 상자의 행 수를 동적으로 설정하십시오.
- 28. 행
- 29. 데이터베이스 값과 다른 테이블의 행 수를 비교하십시오.
- 30. PHP가있는 Oracle의 SELECTED 행 수를 계산합니다.
솔루션에 '계산'이 포함될 수 있음을 이미 알고있는 것으로 보입니다. 그럼 이미 뭘 해봤습니까? –
이 행 번호를 일정하게 유지할 수는 없습니다. 'ORDER BY' 절이없는 SQL 쿼리는 어떤 순서도 보장하지 않습니다. – Crack
나는 데이터베이스에있는 모든 행을 에코하는 코드 블록과 데이터베이스에있는 행의 수를 반향시킬 수있는 코드를 시도했다. –