您可以使用类似:
SELECT a.CategoryType, a.Number
FROM CategoriesAndNumbers a
WHERE a.Number IN (
SELECT Top 3 [Number]
FROM CategoriesAndNumbers b
WHERE b.CategoryType=a.CategoryType
ORDER BY [Number])
ORDER BY a.CategoryType
这样做的困难在于,Jet / ACE Top选择存在重复值的地方,因此您不一定会得到三个值,如果有联系,您会得到更多的值。如果存在一个关键字段,通常可以通过一个关键字段来解决该问题:
WHERE a.Number IN (
SELECT Top 3 [Number]
FROM CategoriesAndNumbers b
WHERE b.CategoryType=a.CategoryType
ORDER BY [Number], [KeyField])
但是,在这种情况下,我认为这不会有所帮助,因为外部表将包含联系。