SQL Server:如何使列成为可选列?



>我在SQL Server 2012中有一个存储过程,用于搜索数据,然后将其插入表中。我还想在不创建重复项的情况下对插入顺序进行排序和决定。我想要排序的列不应该插入,但我不知道是否可以使列可选。.

这是我的 SQL:

INSERT INTO Plans (personID, Title, CreatedOn) 
SELECT DISTINCT
P.personID,
A.title,
A.CreatedOn,
P.AppointmentTime    -- I want to sort by this column
... Join conditions
... ORDER BY P.AppointmentTime DESC

代码效果很好,我唯一的问题是如何以某种方式从插入中排除P.AppointmentTime列?由于我使用的是 distinct,因此我必须将其放在选择列表中。任何建议都会很棒。

您可以使用group by

INSERT INTO Plans (personID, Title, CreatedOn) 
Select distinct P.personID, A.title, A.CreatedOn
from  ... Join conditions
group by P.personID, A.title, A.CreatedOn
order by max(P.AppointmentTime) desc

最新更新