假设我有一个
表A
(A_pkey,B_pkey,A_type,A_value)
和一张桌子 B
(B_pkey, B_minValueForTypeX,B_maxValueTypeX,B_minValueForTypeY,B_maxValuForeTypeY,B_minValueForTypeZ,B_maxValueForTypeZ)
具有以下值:
一个
1,1,'X',100
2,1,'X',1000
3,1,'X',300
4,1,'Y',500
5,1,'Y',200
6,1,'Z',300
7,2,'X',100
8,2,'X',200
9,2,'X',300
10,2,'Y',100
11,2,'Y',2000
乙
1,NULL,NULL,NULL,NULL,NULL,NULL
2,NULL,NULL,NULL,NULL,NULL,NULL
是否可以在一个查询中更新 B 以便
B_minValueForTypeX= min(A_value) from A where A_type='X' (with A.B_pkey=B.B_pkey)
B_maxValueForTypeX= max(A_value) from A where A_type='X' (with A.B_pkey=B.B_pkey)
B_minValueForTypeY= min(A_value) from A where A_type='Y' (with A.B_pkey=B.B_pkey)
等等...
所以表 B 就这样结束了
1,100,1000,200,500,300,300
2,100,300,100,2000,0,0
我确定可以做到,但不知道怎么做。
有人可以帮我吗?
谢谢你的帮助