SQL 如何连接同一表中两条记录信息成一条记录

写了好久,只会写前面部分拉出来查询站的信息,但是不知道怎么把前一个站的信息连接起来, 详情请看图片 select T.Bus_No, T.Schedule_type, T.Sation, T.Visit_No, T.M_CALL, T.ETA from table T where T.station = 'Chongqing'
表中的Bus NO 和Visit No组合是唯一的。Visit_No不连续,但是前一站的一定比后一站的小。

'可以理解为你的所有字段数据并不是唯一的,但你的Visit_No值绝对是从小到大的
'这是你当前查询重庆的代码
Sql = "Select T.Bus_No,T.Schedule_Type,T.Station,T.Visit_No,T.M_CALL,T.ETA from tableT where T.Station='chongqing'"
' 将查询重庆的Visit_No值赋给VisitA
VisitA = ""
'根据VisitA查询出比它小的值,再与当前值进行比较找到上一条值
Sql = "Select T.Station,T.Visit_No,T.ETD from TableT where T.Visit_No<'" & VisitA & "'order by T.Visit_No asc"
i = 1
Do While Not b.EOF '循环比对数据,找到上一条数据
    If i = 1 Then
        Station = b(1)
        Price = b(2)
        ETD = b(3)
    ElseIf Price <= b(2) Then
        Station = b(1)
        Price = b(2)
        ETD = b(3)
    End If
    i = i + 1
b.MoveNext
Loop
'最后将结果写到后面就可以了

追问

所以这个必须要有其他代码的介入吗?其实更想直接用SQL语句解决。

追答

如果你的数据库有ID字段的话就很容易用一句SQL实现,但是你现在的没有就只能这样去实现

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-05-24
这个不好连啊,因为没有特定规律的
相似回答