次の2つのクエリに 'union'を使用するにはどうすればよいですか?または他の解決策がありますか?彼らは正常に実行され、私が期待する結果セットを返します。それらは同じ数の列を持ち(同じ表と同じデータ型を使用します)、case文と 'where'節で異なります。2つの結果セットを同じ列ではなくcase文とwhere句が異なるように結合する方法
SELECT TOP 720
ind_first_name AS [First Name],
ind_last_name AS [Last Name],
cst_recno AS [Member ID],
cst_eml_address_dn AS [Email Address],
adr_city AS City,
adr_state AS [State],
adr_country AS Country,
cst_org_name_dn AS Company,
cst_ixo_title_dn AS [Job Title],
CASE
WHEN mem_member_product LIKE '%Stud%'
THEN 'Associate Student'
ELSE 'Exclude'
END AS [Member Type]
FROM co_individual
INNER JOIN co_individual_ext ON ind_cst_key_ext = ind_cst_key
INNER JOIN co_customer ON cst_key = ind_cst_key
AND ind_delete_flag=0
AND ind_deceased_flag=0
LEFT JOIN co_customer_x_address ON cst_cxa_key = cxa_key
LEFT JOIN co_address ON adr_key = cxa_adr_key
LEFT JOIN vw_client_uli_member_type ON cst_key = mem_cst_key
WHERE mem_member_type IS NOT NULL and mem_expire_date >= 9/7/2017 and mem_member_product LIKE '%Stud%'
AND adr_country = N'UNITED STATES'
AND ind_deceased_flag != 1
AND ind_key_leader_flag_ext != 1
AND ind_int_code != N'Staff'
AND ind_int_code != N'Spouse'
AND ind_int_code != N'Press'
order by newid()
SELECT TOP 80
ind_first_name AS [First Name],
ind_last_name AS [Last Name],
cst_recno AS [Member ID],
cst_eml_address_dn AS [Email Address],
adr_city AS City,
adr_state AS [State],
adr_country AS Country,
cst_org_name_dn AS Company,
cst_ixo_title_dn AS [Job Title],
CASE
WHEN Mem_member_type in ('Full Under 35 Sustaining','Full Member') and ind_age_cp <= '35'
THEN 'Full Member Under 35'
ELSE 'Exclude'
END AS [Member Type]
FROM co_individual
INNER JOIN co_individual_ext ON ind_cst_key_ext = ind_cst_key
INNER JOIN co_customer ON cst_key = ind_cst_key
AND ind_delete_flag=0
AND ind_deceased_flag=0
LEFT JOIN co_customer_x_address ON cst_cxa_key = cxa_key
LEFT JOIN co_address ON adr_key = cxa_adr_key
LEFT JOIN vw_client_uli_member_type ON cst_key = mem_cst_key
WHERE mem_member_type IS NOT NULL and mem_expire_date >= 9/7/2017 and mem_member_type in ('Full Under 35 Sustaining','Full Member') and ind_age_cp <= '35'
AND adr_country = N'UNITED STATES'
AND ind_deceased_flag != 1
AND ind_key_leader_flag_ext != 1
AND ind_int_code != N'Staff'
AND ind_int_code != N'Spouse'
AND ind_int_code != N'Press'
order by newid()
ありがとうございます。あなただけの、2つのクエリの間のUNIONを入れ括弧で全体を包んで、それに別名を与え、そこから選択することができるはず
も何が起こりますか? – ADyson