다른 열에 대한 MySql SELECT 조합?
썸네일 파일이 첨부된 파일을 선택하는 선택 쿼리가 있고 썸네일이 첨부되지 않은 파일도 받아야 합니다.
현재 sql 쿼리는
SELECT node.title, node.nid, files.fid, files.filepath,
content_type_mobile_event.field_date_value,
content_type_mobile_event.field_movie_shorts_value,
content_type_mobile_event.field_director_value,
content_type_mobile_event.field_length_value,
content_type_mobile_event.field_movie_type_value,
content_type_mobile_event.field_year_value,
content_type_mobile_event.field_event_type_value,
content_type_mobile_event.field_movie_location_value,
content_type_mobile_event.field_movie_desc_value,
content_type_mobile_event.field_movie_id_value,
content_type_mobile_event.field_movie_thumb_fid,
content_type_mobile_event.field_movie_trailer_url
FROM node, content_type_mobile_event, files
WHERE node.nid=content_type_mobile_event.nid AND
content_type_mobile_event.field_movie_thumb_fid=files.fid
ORDER BY content_type_mobile_event.field_date_value ASC
저도 필요합니다.
SELECT node.title, node.nid, content_type_mobile_event.field_date_value,
content_type_mobile_event.field_movie_shorts_value,
content_type_mobile_event.field_director_value,
content_type_mobile_event.field_length_value,
content_type_mobile_event.field_movie_type_value,
content_type_mobile_event.field_year_value,
content_type_mobile_event.field_event_type_value,
content_type_mobile_event.field_movie_location_value,
content_type_mobile_event.field_movie_desc_value,
content_type_mobile_event.field_movie_id_value,
content_type_mobile_event.field_movie_thumb_fid,
content_type_mobile_event.field_movie_trailer_url
FROM node, content_type_mobile_event
WHERE node.nid=content_type_mobile_event.nid AND
content_type_mobile_event.field_movie_thumb_fid!=1
ORDER BY content_type_mobile_event.field_date_value ASC
저는 보통은 그냥.
(
SELECT node.title, node.nid, files.fid, files.filepath,
content_type_mobile_event.field_date_value,
content_type_mobile_event.field_movie_shorts_value,
content_type_mobile_event.field_director_value,
content_type_mobile_event.field_length_value,
content_type_mobile_event.field_movie_type_value,
content_type_mobile_event.field_year_value,
content_type_mobile_event.field_event_type_value,
content_type_mobile_event.field_movie_location_value,
content_type_mobile_event.field_movie_desc_value,
content_type_mobile_event.field_movie_id_value,
content_type_mobile_event.field_movie_thumb_fid,
content_type_mobile_event.field_movie_trailer_url
FROM node, content_type_mobile_event, files
WHERE node.nid=content_type_mobile_event.nid AND
content_type_mobile_event.field_movie_thumb_fid=files.fid
ORDER BY content_type_mobile_event.field_date_value ASC
)
UNION
(
SELECT node.title, node.nid, content_type_mobile_event.field_date_value,
content_type_mobile_event.field_movie_shorts_value,
content_type_mobile_event.field_director_value,
content_type_mobile_event.field_length_value,
content_type_mobile_event.field_movie_type_value,
content_type_mobile_event.field_year_value,
content_type_mobile_event.field_event_type_value,
content_type_mobile_event.field_movie_location_value,
content_type_mobile_event.field_movie_desc_value,
content_type_mobile_event.field_movie_id_value,
content_type_mobile_event.field_movie_thumb_fid,
content_type_mobile_event.field_movie_trailer_url
FROM node, content_type_mobile_event
WHERE node.nid=content_type_mobile_event.nid AND
content_type_mobile_event.field_movie_thumb_fid!=1
ORDER BY content_type_mobile_event.field_date_value ASC
)
하지만 문제는 두 번째 열은 파일을 제외하고 다른 열 집합을 가지고 있다는 것입니다.* 일부)
나는 이것을 어떻게 하는지 평생 알 수가 없습니다.
서로 다른 의미를 가진 분야가 있다면, 같은 위치에서 반납할 수도 없고 해서도 안 됩니다.그러나 다음과 같이 필드에 null을 추가하여 '공백 채우기'를 수행할 수 있습니다.
select id, name, date, null as userid, 'A' as recordtype from table1
union all
select id, name, null /*as date*/, userid, 'B' as recordtype from table2
첫 번째 선택에서 null에 대한 별칭을 제공할 수 있습니다.명확하게 하기 위해 두 번째 선택 항목에서 별칭을 추가할 수 있지만 사용되지 않습니다.레코드 유형을 나중에 구별하는 데 사용할 수 있는 상수 값을 사용할 수도 있습니다.
선택 A에 열이 없으면 null 값을 사용합니다.
table A (colA, ColB, ColC)
table B (colA, ColD, ColE)
select colA, ColB, ColC, null, null from table A
union
select colA, null, null, colD, colE from table B
일치하는 각 열이 동일한 데이터 유형인지 확인해야 합니다.
칼럼을 가짜로 만들어 조합을 만들 수 있습니다.
예를 들면
select x, y from A
union
select z, null from B
언급URL : https://stackoverflow.com/questions/7407864/mysql-select-union-for-different-columns
'programing' 카테고리의 다른 글
ARC를 사용하고 iOS 4.0을 대상으로 할 때 약한 참조를 대체하려면 어떻게 해야 합니까? (0) | 2023.11.01 |
---|---|
다른 포트에 도커 mysql (0) | 2023.11.01 |
CSS에서 스타일 비활성화 버튼 (0) | 2023.11.01 |
MySQL, Grails 2 앱을 사용하지 않는 동안 풀링된 연결을 지속적으로 유지하는 올바른 방법(또는 풀링된 연결의 시간을 초과하고 새 연결을 얻는 방법) (0) | 2023.11.01 |
C++에서 더블을 문자열로 변환하려면 어떻게 해야 합니까? (0) | 2023.11.01 |