[SQL] 또 다른 하나 개의 테이블 일치 조건에서 선택?
SQL또 다른 하나 개의 테이블 일치 조건에서 선택?
정말 테이블에서 SQL 쿼리에 도움을 주시면 감사하겠습니다. 나는 이런 종류의 물건이 지속적으로 요구하고 있지만 나는 대답의 의미를 만들 수있는 유사한 정도로 질문을 찾을 수 없습니다 알고 있습니다.
나는 table_B에서 해당 태그가 table_A에서 행을 선택합니다. 따라서, 예를 들어, " '의자'태그 table_a에서 행을 선택"table_C을 반환합니다.
또한, ID는 table_a 독특한, 그리고 table_b에 있습니다.
table_A: table_B: table_C:
id object id tag id object
1 lamp 1 furniture 3 stool
2 table 2 furniture 4 bench
3 stool 3 furniture
4 bench 4 furniture
4 chair
3 chair
또한, 데이터를 구성하는 더 좋은 방법이 있나요?
해결법
-
==============================
1.가장 간단한 해결책이 될 것 상관 하위 선택 :
가장 간단한 해결책이 될 것 상관 하위 선택 :
select A.* from table_A A where A.id in ( select B.id from table_B B where B.tag = 'chair' )
또는 당신은 당신이 원하는 행을 테이블을 조인하고 필터링 할 수 있습니다 :
select A.* from table_A A inner join table_B B on A.id = B.id where B.tag = 'chair'
당신은 모두를 프로파일 링하고 빠르게 데이터 세트에있는 볼 수 있습니다.
-
==============================
2.당신은 연결 테이블 태그를 자신의 테이블을 만들어야합니다.
당신은 연결 테이블 태그를 자신의 테이블을 만들어야합니다.
items: id object 1 lamp 2 table 3 stool 4 bench tags: id tag 1 furniture 2 chair items_tags: item_id tag_id 1 1 2 1 3 1 4 1 3 2 4 2
-
==============================
3.
select a.id, a.object from table_A a inner join table_B b on a.id=b.id where b.tag = 'chair';
-
==============================
4.나는 (적어도 내가 비슷한 생각) 비슷한 문제가 있습니다. 다음 여기에 회신 한 용액이다 :
나는 (적어도 내가 비슷한 생각) 비슷한 문제가 있습니다. 다음 여기에 회신 한 용액이다 :
select A.* from table_A A inner join table_B B on A.id = B.id where B.tag = 'chair'
내가 좋아하는 것 절이 될하는 곳 :
WHERE B.tag = A.<col_name>
또는, 내 특정의 경우 :
WHERE B.val BETWEEN A.val1 AND A.val2
좀 더 자세하게:
표 A 장비의 함대의 상태 정보를 전달합니다. 각 상태의 기록은 그것으로 그 상태의 시작 및 정지 시간을 전달한다. 표 B가 정기적으로 기록 된 운반 나는 기간 동안 추출 할 장비에 대한 타임 스탬프 데이터는 테이블 A에 표시된
from https://stackoverflow.com/questions/5446778/select-from-one-table-matching-criteria-in-another by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 어떻게 MySQL은 DATETIME에서 일부 날짜와 시간에 (0) | 2020.04.29 |
---|---|
[SQL] 어떻게 특정 문자까지 오라클 SQL에서 문자열을 선택하려면? (0) | 2020.04.29 |
[SQL] 고유 식별자없이 중복 행을 삭제하는 방법 (0) | 2020.04.29 |
[SQL] SQL 서버 관리 스튜디오를 사용하여 데이터베이스로 BLOB를 삽입하는 방법 (0) | 2020.04.29 |
[SQL] SQL 서버의 모든 데이터베이스의 모든 테이블에 대한 열 이름을 찾는 방법 (0) | 2020.04.29 |