찾다

 >  Q&A  >  본문

php - 이 다중 테이블 공동 쿼리에 대한 SQL을 작성하는 방법은 무엇입니까?

내 문제는 아래 그림과 같습니다. 데이터베이스 구조와 데이터는 아래 코드 블록에 있습니다.

< /p>

내가 얻고자 하는 결과는 다음과 같습니다.

테이블 구조와 데이터는 다음과 같습니다

테이블 A 생성(
ID INT NOT NULL,
숫자 INT NOT NULL
)CHARSET=utf8;

INSERT INTO A(id,num) VALUES(1,5),(2,7),(3,6);

테이블 B 생성(
INT NOT NULL,
INT NOT NULL,
내용 VARCHAR(20) NOT NULL
)CHARSET=utf8;

INSERT INTO B(aid,sid,content) VALUES(3,1,'A'),(3,2,'B'),(3,3,'C');

테이블 C 생성(
ID INT NOT NULL,
시간 INT는 NULL이 아닙니다.
libs VARCHAR(20) NOT NULL
)CHARSET=utf8;

INSERT INTO C(id,time,libs) VALUES(2,18,'wagaga'),(3,16,'aaaa'),(1,15,'cc'),(3,17,'dddd') ,(4,14,'eeee'),(3,10,'ffff'),(3,11,'bbbb');

이것은 내 요구 사항을 충족할 수 있지만 실행 효율성이 너무 낮습니다...

에서 * 선택
(
구별된 선택
    a.id,a.num,b.aid,b.sid,b.content,c.id as cid,c.time,c.libs
에서
    에
LEFT JOIN b b ON b.aid = a.id
LEFT JOIN c ON c.id = b.sid
여기서 a.id = 3
시간별 주문 DESC
) TMP로
GROUP BY cid ;

보다 효율적인 글쓰기 방법을 제공해 줄 수 있는 전문가가 있나요?

阿神阿神2810일 전864

모든 응답(5)나는 대답할 것이다

  • 習慣沉默

    習慣沉默2017-05-16 13:09:35

    으아아아

    회신하다
    0
  • 天蓬老师

    天蓬老师2017-05-16 13:09:35

    으아아아

    위 데이터라면 이 SQL이 만족되어야 합니다. . . 만족스럽지 않다면 신경쓰지 마세요...


    이것은 내 쿼리 결과입니다

    회신하다
    0
  • 高洛峰

    高洛峰2017-05-16 13:09:35

    으아아아

    회신하다
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-16 13:09:35

    원하는 내용이 질문에 명확하게 설명되어 있지 않습니다. . .

    회신하다
    0
  • phpcn_u1582

    phpcn_u15822017-05-16 13:09:35

    으아악

    효율성에 문제가 있습니다..

    회신하다
    0
  • 취소회신하다