0
쿼리를 위해 한 번에 3 개의 테이블을 선택하려고합니다. 각 테이블에 대해 반환되는 행 수를 결정하는 가장 좋은 방법은 무엇입니까? 나는 이런 식으로한다면 이렇게테이블 당 MySQL 다중 SELECT 문 계산 결과가 반환되었습니다.
는개별적으로, 나는 각각의 많은 행이 반환되는 방식을 선택할에 내가 볼 수있는,
SELECT * from tableA
SELECT * from tableB
SELECT * from tableC
있습니다. 한 번에이 모든 것을 성공적으로 선택하고 싶습니다. 그러나 반환 된 테이블 당 결과를 선택하는 방법을 알고 싶습니다. 아래의 검색어 예 :
SELECT * from tableA ta WHERE id=100
SELECT * from tableB tb where pid=100
SELECT * from tableC tc where cid = 100
이 문제가 발생합니까?
SELECT (count(id) from tableA where id=100) as count_tableA,
SELECT * from tableA ta WHERE id=100,
SELECT (count(pid) from tableB where id=100) as count_tableB,
SELECT * from tableB tb where pid=100,
SELECT (count(id) from tableB where cid=100) as count_tableC,
SELECT * from tableC tc where cid = 100
전반적인 목표는 3 개 쿼리마다 피함으로써 성능을 향상하는 것이지만, 그와 함께, 나는 반환되는 각 테이블에서 데리러 행 수를 분리해야합니다.
어떤 방식 으로든 테이블을 결합하고 있습니까? –
쿼리를 실행하려면 무엇을 사용하고 있습니까? 대부분의 Db 드라이버는 일종의 '반환 된 행 수'를 지원합니다. – ethrbunny
phpMyAdmin을 사용하고 있습니다. @GreenDemon, 이러한 쿼리는 내 가입 방법이며 잘 작동하지만이 작업을 수행하는 데 가장 효율적인 방법임을 확인하고자합니다. –