C# Datagridview仅列出父记录和最后一个子记录

C# Datagridview仅列出父记录和最后一个子记录,c#,sql,tableadapter,C#,Sql,Tableadapter,我有两张桌子——t1和t2。 我试图用公司t1和上次签署的合同t2填充datagridview 我正在visual studio 2019中使用带有OLE连接的accdb 我有[t1].[ID]一对多链接到[t2].[t1ID] 我刚刚尝试了从t1左外连接t2中选择*在t1.ID=MAX t1ID从t2中选择t2.t1ID=t1.ID 这使我在WHERE子句中出错,无法分析查询文本 我正在VisualStudio2019中将其输入到Dataset TableAdapter查询中 我只想得到一个结

我有两张桌子——t1和t2。 我试图用公司t1和上次签署的合同t2填充datagridview

我正在visual studio 2019中使用带有OLE连接的accdb

我有[t1].[ID]一对多链接到[t2].[t1ID]

我刚刚尝试了从t1左外连接t2中选择*在t1.ID=MAX t1ID从t2中选择t2.t1ID=t1.ID

这使我在WHERE子句中出错,无法分析查询文本

我正在VisualStudio2019中将其输入到Dataset TableAdapter查询中

我只想得到一个结果:

公司1合同2020

我目前得到:

2018年公司1合同

2019年公司1合同

公司1合同2020

我现在已经试过了

(Client t1 LEFT OUTER JOIN
                     Contract t2 ON t1.ID = t2.ClientID AND t2.ID =
                         (SELECT        MAX(t2.ID) AS Expr1
                           FROM            t2
                           WHERE        (t1.ID = t2.ClientID)))

我现在有语法错误

语法错误出现在t2的最后一个子查询中,应该是“Contract t2”

选择t1,t2。 来自客户端t1的左外部联接 t1.ID=t2.ClientID上的合同t2 其中t2.ID= 选择MAXID作为Expr1 从合同t2
其中t1.ID=ClientID

是WinForms应用程序吗?添加标签您使用什么作为数据源:数据集还是类的类型化集合?我刚刚尝试了对数据集进行以下筛选,但没有成功。其中Client.ID=Contract.ClientID和Contract.ID=maxids您的问题是关于如何编写sql查询?我正在visual studio 2019中使用带有oledb连接的accdb文件。我认为您需要删除winforms、datagridview和bindingsource标记,添加sql标记,并通过将编写sql查询的尝试放在此处来编辑问题正文。