tbl_A
uqAID A
1 CC
2 AA
3 SS
4 QQ
5 RR
6 UU
7 LL
8 WW
tbl_B
uqBID uqAID B
1 4 NNN
2 4 MMM
3 3 OOO
4 1 PPP
5 6 QQQ
6 4 RRR
7 8 SSS
8 2 TTT
使用此查询
SELECT X.B,
Y.A
FROM tbl_B AS X,
tbl_A AS Y
WHERE X.uqAID = Y.uqBID
AND X.A = 'UU'
AND Y.B = 'QQQ'
我的结果为" UU QQQ"
但我需要得到像
这样的结果SS OOO
CC PPP
UU QQQ
QQ RRR
WW SSS
MS Access中两个UU和QQQ记录的上下文
答案 0 :(得分:0)
首先,它取决于订单。因此,您将需要根据您的查询订购,否则无法预测您将获得的结果。
假设它在Y.B专栏上有问题,你可以做这样的事情来获得QQQ,然后是两个:
SELECT Top 3 X.B,
Y.A
FROM tbl_B AS X,
tbl_A AS Y
WHERE X.uqAID = Y.uqBID
AND X.A >= 'UU'
AND Y.B >= 'QQQ'
order by y.a, y.b
接下来要获得QQQ之前的两个
SELECT Top 2 X.B,
Y.A
FROM tbl_B AS X,
tbl_A AS Y
WHERE X.uqAID = Y.uqBID
AND X.A < 'UU'
AND Y.B < 'QQQ'
order by y.a desc, y.b desc
从那里你可以将两个结果集合并在一起(留给学生练习)。这应该让你得到两个进程并跟随触发行。