첫 번째 테이블에서 일치하는 값에 대해 두 번째 및 세 번째 테이블에서 값 가져 오기

아무도

저는 jQuery 개발자이고 테이블에서 데이터를 검색하는 방법에 대한 좋은 생각이 없습니다. 나는 그것을 배우려고 노력하고 있습니다.

처리해야 할 특별한 경우가 있습니다. 세 개의 테이블을 고려하십시오

tb1 
-----------------------------------------------
    pid    fname     lname       cid       eid
    12      jo         mo        16345     2345
    13      ko         ro        16324     2435

tb2
-----------------------------------------------
    cid     cname
   16345    amazed
   16324    bored

tb3
------------------------------------------------
    eid      ename
    2345      nolo
    21345     johny

일치하는 pid 값에 대한 데이터를 검색하고 싶습니다. 말하다,

select * from tb1 where pid = 12 

나를 돌려 준다 pid, fname, lname, cid, eid

cid값 대신 숫자 16345입니다. 나는 원하는 cid값이 일치되어야 tb2하고있는 CNAME 열 값을 얻을 amazed과와 동일 eid(가)입니다 ename : nolo내가 그 숫자가 TB2 및 TB3 일치와 그 문자열 값을 얻을 수 싶어요.

3 개의 MySQL 쿼리를 사용하여 할 수 있습니다.

이것은 내가 시도한 것입니다

 $result = mysql_query("select * from tb1 where pid = 12");
 $row = mysql_fetch_array($result,MYSQL_ASSOC);
 $cname = mysql_query("select cname from tb2 where cid = '$row[cid]'");
 $x =  mysql_fetch_array($cname,MYSQL_ASSOC);
 $cname = mysql_query("select ename from tb3 where eid = '$row[eid]'"); 
 $y =  mysql_fetch_array($cname,MYSQL_ASSOC);

하지만 코드가 이상적이지 않다고 생각합니다. 단일 쿼리에서 검색하는 방법이 있어야한다고 생각하지만 그것이 무엇이어야하는지 잘 모르겠습니다. 조인 또는 하위 쿼리 일 수 있습니다.

플로린

3 개의 테이블에 조인 사용

SELECT tb1.*, tb2.cname, tb3.ename from tb1
JOIN tb2 ON tb1.cid = tb2.cid
JOIN tb3 ON tb1.eid = tb3.eid
WHERE tb1.pid = 12

도움이 되었기를 바랍니다

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사