【发布时间】:2021-03-13 18:43:10
【问题描述】:
我有两张桌子:
Labs ==========
LabID
==========
1
Messages ==========
Message
==========
Hello world
Hello world 2
我想加入这两个表,所以输出变成:
=== Lab ID === Messages ===
1 Hello World
如果我这样做
select * from Labs l inner join Messages m on l.LabID = m.LabID
它会两次打印第一个 ID,因为该表中有两条消息。我只想选择第一条消息。 我尝试添加 top 1 但这没有任何作用。我真的是 SQL 新手。
【问题讨论】:
-
您需要一些方法来区分第二个表中的 2 行,并只选择其中的一个吗?
-
是的,我可以试试
-
您确定要向我们展示这些表格的全部内容吗?
-
您必须将 LabID 作为 Messages 中的一列,您还有哪些其他列,是否有可以获取最新或最早消息的日期/时间列?
-
是的,消息中有一个 labid 列和一个时间戳
标签: sql sql-server tsql sql-server-2008 greatest-n-per-group