반응형
WHERE 절이 있는 MySql 내부 가입
코드는 다음과 같습니다.
SELECT table1.f_id FROM table1 WHERE table1.f_com_id = '430' AND
table1.f_status = 'Submitted'
INNER JOIN table2
ON table2.f_id = table1.f_id
where table2.f_type = 'InProcess'
정보가 필요합니다.table1
와 관련된 모든 아이디로서f_com_id
430 및 제출된 상태이며 유형은 다른 테이블에 저장되어 있는 처리 중이어야 합니다(table2
)
f_id
이p_key
그리고.f_key
두 테이블 모두.
하지만 이렇게 해서 오류가 나는 것 같아요.WHERE
조항이 틀렸어요. 어떻게 고치죠?
오류 메시지: #1064 - SQL 구문에 오류가 있습니다. MySQL 서버 버전에 해당하는 설명서에서 'INNER JOIN table2 ON table2' 근처에서 사용할 올바른 구문을 확인하십시오.f_id = 2행의 '
네, 당신이 맞아요.배치했습니다.WHERE
절이 틀렸습니다.1개만 사용할 수 있습니다.WHERE
단일 쿼리의 절이므로 시도해 보십시오.AND
다음과 같은 여러 조건의 경우:
SELECT table1.f_id FROM table1
INNER JOIN table2
ON table2.f_id = table1.f_id
WHERE table2.f_type = 'InProcess'
AND f_com_id = '430'
AND f_status = 'Submitted'
1. WHERE 절 앞에 INSER JOIN을 변경합니다.
2. 허용되지 않는 두 개의 WHERE가 있습니다.
이것을 시험해 보세요.
table1을 선택합니다.f_id FROM 테이블1내부 결합 테이블 2ON(표2)f_id = table1 。f_id AND 테이블2f_type = 'InProcess')Where 표1.f_com_id = 'filename' AND table1 。f_status = '제출됨'
where 절은 하나만 쓸 수 있습니다.
SELECT table1.f_id FROM table1
INNER JOIN table2
ON table2.f_id = table1.f_id
where table1.f_com_id = '430' AND
table1.f_status = 'Submitted' AND table2.f_type = 'InProcess'
2개를 사용하고 있습니다.WHERE
1개만 허용됩니다.다음과 같이 사용합니다.
SELECT table1.f_id FROM table1
INNER JOIN table2 ON table2.f_id = table1.f_id
WHERE
table1.f_com_id = '430'
AND table1.f_status = 'Submitted'
AND table2.f_type = 'InProcess'
언급URL : https://stackoverflow.com/questions/12364602/mysql-inner-join-with-where-clause
반응형
'programing' 카테고리의 다른 글
'풀 수 있는 값이 너무 많다'는 식으로 반복됩니다.key=> 문자열, 값=> 목록 (0) | 2023.01.19 |
---|---|
어떻게 하면 모든 것을 특정 캐릭터를 따라잡을 수 있을까요? (0) | 2023.01.19 |
오픈 소스 프로젝트에 참여하고 싶지만 내 특정 스킬에 맞는 제안을 원합니다. (0) | 2023.01.19 |
HTML 문자열을 DOM 요소로 변환하시겠습니까? (0) | 2023.01.19 |
Python용 tkinter 설치 (0) | 2023.01.19 |