|
SELECT a.*, (select top 1 r1 from 表2 as a1 where a1.id=a.id and a1.name=a.name) AS r1, (select top 1 r2 from 表2 as a2 where a2.id=a.id and a2.name=a.name) AS r2 FROM [SELECT DISTINCT 表2.id, 表2.NAME FROM 表2]. AS a; |
SELECT a.*, dlookup("r1","表2","id=" & a.id & " and name='"& a.name & "'") AS r1, dlookup("r2","表2","id=" & a.id & " and name='"& a.name & "'") AS r2 FROM [SELECT DISTINCT 表2.id, 表2.NAME FROM 表2]. AS a; |
注意,上述代码中由于没有唯一标识列,因此显示的 R1 R2 的先后次序无从确定,一般是按输入的先后顺序,但是微软没有官方资料说明到底按哪个顺序,请网友注意。
请注意,上述表2为没有唯一标识字段,如果现在再建立一个自动编号字段“主键”则可以用以下代码
SELECT a.ID, a.name, b.r1, b.r2, b.主键 FROM (SELECT 表2.id, 表2.NAME, Min(表2.主键) AS 主键 FROM 表2 GROUP BY 表2.id, 表2.NAME) AS a inner JOIN 表2 AS b ON a.主键=b.主键; | |