【发布时间】:2020-09-10 15:42:29
【问题描述】:
我有两张桌子 - t1 和 t2。 我正在尝试用公司 (t1) 填充 datagridview 并签署最后一份合同 (t2)。
我在 Visual Studio 2019 中使用带有 OLE 连接的 accdb。
我有 [t1].[ID] 一对多链接到 [t2].[t1ID]。
我刚刚试过select * from (t1 LEFT OUTER JOIN t2 ON t1.ID = (MAX (t1ID) FROM t2 WHERE t2.t1ID = t1.ID)
这给了我 WHERE 子句中的错误并且无法解析查询文本。
我正在将此输入到 Visual Studio 2019 中的 Dataset TableAdapter 查询中。
我只想得到一个结果:
公司 1 合同 2020
我目前得到:
company1 合同 2018
公司 1 合同 2019
公司 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)))
我现在有语法错误
【问题讨论】:
-
它是 WinForms 应用程序吗?添加标签。 |您使用什么作为数据源:DataSet 还是类型化的类集合?
-
我刚刚对数据集尝试了以下过滤器,但它不起作用。 WHERE Client.ID=Contract.ClientID 和 Contract.ID = MAX(ID)
-
那么你的问题是关于如何写一个sql查询?
-
我在 Visual Studio 2019 中使用带有 oledb 连接的 accdb 文件
-
我认为您需要删除
winforms、datagridview和bindingsource标签,添加sql标签,并通过尝试编写sql 查询来编辑问题正文在那里。
标签: c# sql tableadapter