SQL Server:如何使列可选?

时间:2018-06-06 15:29:43

标签: sql sql-server

我在SQL Server 2012中有一个搜索数据的存储过程,然后将其插入表中。我还想排序并决定插入顺序而不创建重复项。我不想插入要排序的列,但我不知道是否可以使列可选..

这是我的SQL:

minSquishedWidth

代码工作得很好我唯一的问题是如何以某种方式从插入中排除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 列?由于我使用的是distinct,我必须在选择列表中使用它。任何建议都会很棒。

1 个答案:

答案 0 :(得分:1)

您可以使用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