mysql 오른쪽 조인이 예상대로 작동하지 않습니다.

안토니 성

오른쪽 조인을 사용하면 왼쪽 조인을 사용하거나 그냥 조인하는 것과 동일한 결과를 얻습니다. 아무도 내가 어디에서 잘못했는지 보여줄 수 있습니까?

다음과 같이 3 개의 테이블이 있습니다.

Langugages

신분증

코드 예 : "hu", "en"

language_default

신분증

본문

language_translations

신분증

lang_id (FK 언어 테이블의 언어 ID)

default_lang_id (FK는 languages_default 테이블의 텍스트 ID)

텍스트 (번역)

다음 쿼리를 실행하면 language_translations 테이블에서 모든 헝가리어 번역을 가져오고 헝가리어 번역이없는 null 값을 가진 language_default 테이블에서 모든 텍스트 필드를 가져올 것으로 예상합니다.

SELECT `language_translations`.`text`
     , `language_default`.`text` 
  FROM `languages`
     , `language_translations` 
        RIGHT JOIN `language_default` ON `language_default`.`id` = `language_translations`.`default_lang_id`
  WHERE `languages`.`code` = 'hu' 
    AND `languages`.`id` = `language_translations`.`lang_id`

대신 tranlsation 테이블의 해당 텍스트에 대한 번역이있는 language_default 테이블에서만 텍스트를 가져옵니다. 왼쪽 조인 또는 일반 조인에서 그 동작을 예상하지만 오른쪽 조인은 아닙니다. langugage_defailt 테이블에서 모든 항목을 얻지 못하는 이유는 무엇입니까?

자파르 말릭

우선 정상적인 조인과 권리 조인의 조합을 잘못된 방식으로 사용하고 있습니다. 아래 쿼리에 따라 사용할 수 있습니다.

두 번째로 오른쪽 조인은 오른쪽에서 모든 레코드를 가져오고 왼쪽에서 해당 레코드를 가져오고 왼쪽에 해당 레코드가 없으면 NULL을 표시합니다.

왼쪽 결합은 그 반대입니다.

일반 결합 또는 쉼표 결합은 공통 행만 제공합니다.

따라서 테이블에 공통 행만있는 경우 모든 조인이 동일한 결과를 제공합니다.

SELECT 
`language_translations`.`text` , `language_default`.`text` 
FROM `languages` AS l
JOIN `language_translations` AS t
ON l.`id` = t.`lang_id` AND l.`code` = 'hu'
RIGHT JOIN `language_default` AS d
ON d.`id` = t.`default_lang_id`;

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

MySql 왼쪽 외부 조인이 예상대로 작동하지 않습니다.

분류에서Dev

MySQL 조인이 예상대로 작동하지 않습니다.

분류에서Dev

mySQL 쿼리 선택 / 조인이 예상대로 작동하지 않습니다.

분류에서Dev

왼쪽 조인이 예상대로 작동하지 않음

분류에서Dev

MYSQL : 예상 행을 반환하지 않는 오른쪽 조인

분류에서Dev

오른쪽 위쪽 화살표를 다시 매핑하여 이동이 예상대로 작동하지 않습니다.

분류에서Dev

왼쪽 조인에서 제한을 사용하는 mysql이 제대로 작동하지 않습니다.

분류에서Dev

MySQL IF (NULL! = "", 1, 0)이 예상대로 작동하지 않습니다.

분류에서Dev

MySQL IF (NULL! = "", 1, 0)이 예상대로 작동하지 않습니다.

분류에서Dev

MySQL-예상대로 작동하지 않음으로써 왼쪽 조인 + 그룹

분류에서Dev

예상대로 작동하지 않는 왼쪽 조인

분류에서Dev

과도하게 구속 된 요소의 오른쪽 여백이 예상대로 작동하지 않는 이유

분류에서Dev

봄 조언이 예상대로 작동하지 않습니다.

분류에서Dev

조건부 바인딩이 예상대로 작동하지 않습니다.

분류에서Dev

Oracle 외부 조인이 예상대로 작동하지 않습니다.

분류에서Dev

Linq의 Simple Left 조인이 예상대로 작동하지 않습니다.

분류에서Dev

MySQL 왼쪽 조인이 작동하지 않는 것 같습니다.

분류에서Dev

MySQL 쿼리가 예상대로 작동하지 않습니다.

분류에서Dev

mysql 쿼리가 예상대로 작동하지 않습니다.

분류에서Dev

NavigationDrawer가 오른쪽에서 왼쪽으로 이동하지 않습니다.

분류에서Dev

Mysql Left Join이 예상대로 작동하지 않음

분류에서Dev

'오른쪽'속성이 제대로 작동하지 않음

분류에서Dev

별표 평점이 왼쪽에서 오른쪽으로 작동하지 않습니다.

분류에서Dev

오른쪽 부동이 작동하지 않습니다

분류에서Dev

Java 상속이 예상대로 작동하지 않습니다.

분류에서Dev

C # 상속이 예상대로 작동하지 않습니다.

분류에서Dev

Cron 작업이 예상대로 작동하지 않습니다.

분류에서Dev

jquery 지연이 예상대로 작동하지 않습니다.

분류에서Dev

내 LAG 기능이 예상대로 작동하지 않습니다. MySQL 8.x

Related 관련 기사

  1. 1

    MySql 왼쪽 외부 조인이 예상대로 작동하지 않습니다.

  2. 2

    MySQL 조인이 예상대로 작동하지 않습니다.

  3. 3

    mySQL 쿼리 선택 / 조인이 예상대로 작동하지 않습니다.

  4. 4

    왼쪽 조인이 예상대로 작동하지 않음

  5. 5

    MYSQL : 예상 행을 반환하지 않는 오른쪽 조인

  6. 6

    오른쪽 위쪽 화살표를 다시 매핑하여 이동이 예상대로 작동하지 않습니다.

  7. 7

    왼쪽 조인에서 제한을 사용하는 mysql이 제대로 작동하지 않습니다.

  8. 8

    MySQL IF (NULL! = "", 1, 0)이 예상대로 작동하지 않습니다.

  9. 9

    MySQL IF (NULL! = "", 1, 0)이 예상대로 작동하지 않습니다.

  10. 10

    MySQL-예상대로 작동하지 않음으로써 왼쪽 조인 + 그룹

  11. 11

    예상대로 작동하지 않는 왼쪽 조인

  12. 12

    과도하게 구속 된 요소의 오른쪽 여백이 예상대로 작동하지 않는 이유

  13. 13

    봄 조언이 예상대로 작동하지 않습니다.

  14. 14

    조건부 바인딩이 예상대로 작동하지 않습니다.

  15. 15

    Oracle 외부 조인이 예상대로 작동하지 않습니다.

  16. 16

    Linq의 Simple Left 조인이 예상대로 작동하지 않습니다.

  17. 17

    MySQL 왼쪽 조인이 작동하지 않는 것 같습니다.

  18. 18

    MySQL 쿼리가 예상대로 작동하지 않습니다.

  19. 19

    mysql 쿼리가 예상대로 작동하지 않습니다.

  20. 20

    NavigationDrawer가 오른쪽에서 왼쪽으로 이동하지 않습니다.

  21. 21

    Mysql Left Join이 예상대로 작동하지 않음

  22. 22

    '오른쪽'속성이 제대로 작동하지 않음

  23. 23

    별표 평점이 왼쪽에서 오른쪽으로 작동하지 않습니다.

  24. 24

    오른쪽 부동이 작동하지 않습니다

  25. 25

    Java 상속이 예상대로 작동하지 않습니다.

  26. 26

    C # 상속이 예상대로 작동하지 않습니다.

  27. 27

    Cron 작업이 예상대로 작동하지 않습니다.

  28. 28

    jquery 지연이 예상대로 작동하지 않습니다.

  29. 29

    내 LAG 기능이 예상대로 작동하지 않습니다. MySQL 8.x

뜨겁다태그

보관