Visual Web Developer + SQL只显示唯一的行

时间:2014-12-01 10:40:06

标签: sql asp.net sql-server sql-server-2008 visual-web-developer-2010

尝试仅显示一列(train_id)中的唯一数据,并将日期限制为今天,但似乎无法使其生效。

尝试Group bySELECT DISTINCT,但似乎无法让Visual Web Dev接受它......详情如下:

使用SQL Server 2008和Visual Web Dev 2010 Express并通过SQLdatasource连接......我的代码如下:

SELECT train_id, 
       path, 
       dep, 
       origin, 
       arr, 
       tsc, 
       depot_code, 
       diag_no FROM train_summary 
       WHERE (
                date BETWEEN CAST(GETDATE() AS date) 
                     AND CAST(DATEADD(d, 1, GETDATE()) AS date)
            ) 
      ORDER BY arr

这段代码有效,但我每行都有2-8个相同的数据行,数据在2列中变化,此时无关紧要。所以我要删除'train_id'上的重复项

任何想法?我只是在学习,所以我大部分都是谷歌搜索,但是我的有限知识并没有真正帮助你的措辞,如果这很容易就很抱歉。

1 个答案:

答案 0 :(得分:2)

如果您的所有记录都是字符串,那么您应该只能分组以限制唯一值

      SELECT 
      train_id
      , path, dep
      , origin
      , arr
      , tsc 
      , depot_code
      , diag_no 
      FROM train_summary 
      WHERE (date BETWEEN CAST(GETDATE() AS date) AND CAST(DATEADD(d, 1, GETDATE()) AS date)) 
      GROUP BY
      train_id
      , path, dep
      , origin
      , arr
      , tsc 
      , depot_code
      , diag_no 
      ORDER BY arr