Sql 创建具有唯一记录的视图
我对以下观点有疑问。下面是代码Sql 创建具有唯一记录的视图,sql,tsql,views,cube,Sql,Tsql,Views,Cube,我对以下观点有疑问。下面是代码 select pe.project_id ,pe.project_evenement_id ,pes.project_evenement_sponsor_id ,peu.project_evenement_uitgave_post_id ,pe.omschrijving ,pes.bedrag as 'project sponsor bedrag' ,peu.bedrag as 'project evenement bedrag'
select
pe.project_id
,pe.project_evenement_id
,pes.project_evenement_sponsor_id
,peu.project_evenement_uitgave_post_id
,pe.omschrijving
,pes.bedrag as 'project sponsor bedrag'
,peu.bedrag as 'project evenement bedrag'
from project_evenement pe
left join project_evenement_sponsor pes
on pes.project_id = pe.project_id
and pes.project_evenement_id = pe.project_evenement_id
left join project_evenement_uitgave_post peu
on peu.project_id = pe.project_id
and peu.project_evenement_id = pe.project_evenement_id
我想创建唯一的记录,但结果显示重复。有人能告诉我如何解决这个问题吗。我得到的唱片比我想象的多得多
将“,*”添加到SELECT(就在FROM之前)。这将显示所有列,您可以看到重复项的位置,然后调整联接条件(添加更多条件以消除重复项),或者,如果不可能,在选择后添加DISTINCT。提示:
SELECT DISTINCT
。这可能是因为一对多关系或缺少联接谓词。正如Gordan所提到的,Distinct可以解决这个问题,但是正确的解决方法是什么,这只能通过了解表的关系来决定