sql-如何在联合查询中对两列使用distinct
我想对以下列执行“独特”操作,但似乎无法正确设置格式: C_type_SYS_IDV和I_SYS_IDV 有什么想法吗 谢谢sql-如何在联合查询中对两列使用distinct,sql,Sql,我想对以下列执行“独特”操作,但似乎无法正确设置格式: C_type_SYS_IDV和I_SYS_IDV 有什么想法吗 谢谢 create volatile table dt as ( SELECT gcv.I_SYS_IDV, gcv.i_pln, gcv.c_typ_cov, gcv.d_eff, gcv.d_eff_pln, gcv.
create volatile table dt as (
SELECT
gcv.I_SYS_IDV,
gcv.i_pln,
gcv.c_typ_cov,
gcv.d_eff,
gcv.d_eff_pln,
gcv.c_sta,
gcv.d_sta,
gcv.c_mde_bft_fst,
gcv.a_bft_fst,
gcv.c_mde_bft_sec,
gcv.a_bft_sec,
gcv.c_mde_bft_trd,
gcv.a_bft_trd,
gcv.p_cre_hom,
gcv.c_cl_rsk,
gpv.c_val,
gpv.i_val,
gcv.c_pol
FROM Pearl_P.tltc906_gcv gcv,
pearl_p.tltc912_gpv gpv
WHERE gcv.i_pln > 0
AND gcv.i_pln = gpv.i_pln
and gpv.i_prv = '36'
and gcv.c_pol between 'lac100001' and 'lac100004'
UNION
SELECT
gcv.I_SYS_IDV,
gcv.i_pln,
gcv.c_typ_cov,
gcv.d_eff,
gcv.d_eff_pln,
gcv.c_sta,
gcv.d_sta,
gcv.c_mde_bft_fst,
gcv.a_bft_fst,
gcv.c_mde_bft_sec,
gcv.a_bft_sec,
gcv.c_mde_bft_trd,
gcv.a_bft_trd,
gcv.p_cre_hom,
gcv.c_cl_rsk,
gcv.c_pol,
gpv.i_val,
''
FROM Pearl_P.tltc906_gcv gcv,
pearl_p.tltc912_gpv gpv
where NOT EXISTS(
SELECT 1
FROM pearl_p.tltc906_gcv gcv,
pearl_p.tltc912_gpv gpv
WHERE gcv.i_pln > 0
AND gcv.i_pln = gpv.i_pln
and gpv.i_prv = '36'
)
) with data
PRIMARY INDEX (i_sys_idv)
on commit preserve rows;
您不能仅对列表中的几个字段执行
DISTINCT
那些
不同的值表示行。如果只想使用那些不同的
行,则需要使用GROUPBY
子句。你能进一步解释一下你想要的是什么吗?你不能只对列表中的几个字段执行DISTINCT
那些不同的值表示行。如果只想使用那些不同的
行,则需要使用GROUPBY
子句。您能进一步解释一下您想要的是什么吗?DISTINCT
应用于查询返回的所有列。它不能单独应用于单个列。我甚至在SELECT语句中看不到C_TYP_SYS_IDV。正如JNK下面所说,使用group by函数。Check outDISTINCT
应用于查询返回的所有列。它不能单独应用于单个列。我甚至在SELECT语句中看不到C_TYP_SYS_IDV。正如JNK下面所说,使用group by函数。退房