我有两个表,分别是表一和表二
表一如下:
KSH YXDH ZYDH ZYH CJ TZCJ TDCJ
08500101111045 1103 14 4 651.000 651.000 651.000
08500101111060 1103 14 3 650.000 650.000 650.000
08500101111092 1103 14 2 646.000 651.000 651.000
08500101111095 1103 28 1 654.000 659.000 659.000
08500101111459 1103 26 1 653.000 653.000 653.000
08500101111505 1103 24 1 659.000 659.000 659.000
08500101111540 1103 16 1 653.000 658.000 658.000
08500101111652 1103 30 2 657.000 657.000 657.000
08500101111653 1103 02 2 653.000 653.000 653.000
08500104111299 1103 00 1 652.000 652.000 652.000
08500104111311 1103 24 1 658.000 658.000 658.000
08500104111326 1103 00 1 636.000 656.000 656.000
08500104111335 1103 23 1 655.000 655.000 655.000
08500104111338 1103 16 1 637.000 657.000 657.000
08500104111837 1103 13 5 645.000 650.000 650.000
08500104111860 1103 27 1 651.000 651.000 651.000
08500104112247 1103 26 2 652.000 652.000 652.000
08500104112270 1103 13 4 652.000 652.000 652.000
08500105111531 1103 15 3 650.000 650.000 650.000
08500107110013 1103 27 1 647.000 652.000 652.000
08500107110189 1103 21 2 652.000 652.000 652.000
08500114110828 1103 13 6 649.000 649.000 649.000
08500117110018 1103 28 2 656.000 656.000 656.000
08500117110074 1103 16 1 653.000 653.000 653.000
08500120110001 1103 21 2 655.000 655.000 655.000
08500122110595 1103 14 3 651.000 651.000 651.000
08500122111143 1103 21 1 647.000 652.000 652.000
08500122111190 1103 02 1 648.000 653.000 653.000
08500126110296 1103 10 3 634.000 639.000 639.000
08500135110258 1103 10 4 629.000 649.000 649.000
08500138110260 1103 16 1 636.000 656.000 656.000
08500140110205 1103 30 4 653.000 653.000 653.000
08500140110357 1104 37 1 666.000 671.000 671.000
表二:
YXDH YXDHMC new录取人数 min_new max_new newcha
1101 北京大学 0 NULL NULL NULL
1103 中国人民大学 0 NULL NULL NULL
1104 清华大学 0 NULL NULL NULL
表一是录取的详细记录。我想通过表一更新表二。可以通过两个表的YXDH相同。我想更新表二,比如说YXDH
,北京大学,在表一录取多少人(表一每条记录是一个录取记录),最小的录取分数min_new,最大录取分数max_new,两个分数差newcha.求助啊
表一如下:
KSH YXDH ZYDH ZYH CJ TZCJ TDCJ
08500101111045 1103 14 4 651.000 651.000 651.000
08500101111060 1103 14 3 650.000 650.000 650.000
08500101111092 1103 14 2 646.000 651.000 651.000
08500101111095 1103 28 1 654.000 659.000 659.000
08500101111459 1103 26 1 653.000 653.000 653.000
08500101111505 1103 24 1 659.000 659.000 659.000
08500101111540 1103 16 1 653.000 658.000 658.000
08500101111652 1103 30 2 657.000 657.000 657.000
08500101111653 1103 02 2 653.000 653.000 653.000
08500104111299 1103 00 1 652.000 652.000 652.000
08500104111311 1103 24 1 658.000 658.000 658.000
08500104111326 1103 00 1 636.000 656.000 656.000
08500104111335 1103 23 1 655.000 655.000 655.000
08500104111338 1103 16 1 637.000 657.000 657.000
08500104111837 1103 13 5 645.000 650.000 650.000
08500104111860 1103 27 1 651.000 651.000 651.000
08500104112247 1103 26 2 652.000 652.000 652.000
08500104112270 1103 13 4 652.000 652.000 652.000
08500105111531 1103 15 3 650.000 650.000 650.000
08500107110013 1103 27 1 647.000 652.000 652.000
08500107110189 1103 21 2 652.000 652.000 652.000
08500114110828 1103 13 6 649.000 649.000 649.000
08500117110018 1103 28 2 656.000 656.000 656.000
08500117110074 1103 16 1 653.000 653.000 653.000
08500120110001 1103 21 2 655.000 655.000 655.000
08500122110595 1103 14 3 651.000 651.000 651.000
08500122111143 1103 21 1 647.000 652.000 652.000
08500122111190 1103 02 1 648.000 653.000 653.000
08500126110296 1103 10 3 634.000 639.000 639.000
08500135110258 1103 10 4 629.000 649.000 649.000
08500138110260 1103 16 1 636.000 656.000 656.000
08500140110205 1103 30 4 653.000 653.000 653.000
08500140110357 1104 37 1 666.000 671.000 671.000
表二:
YXDH YXDHMC new录取人数 min_new max_new newcha
1101 北京大学 0 NULL NULL NULL
1103 中国人民大学 0 NULL NULL NULL
1104 清华大学 0 NULL NULL NULL
表一是录取的详细记录。我想通过表一更新表二。可以通过两个表的YXDH相同。我想更新表二,比如说YXDH
,北京大学,在表一录取多少人(表一每条记录是一个录取记录),最小的录取分数min_new,最大录取分数max_new,两个分数差newcha.求助啊
1101 北京大学 0 NULL NULL NULL
表一表二的某条记录,弄清晰点
update t2
set t2.new录取人数=t1.cnt,
t2.min_new=t1.min_new,
t2.max_new=t1.max_new,
t2.newcha=t1.newcha
from 表二 t2
left join
(select YXDH,
count(1) 'cnt',
min(CJ) 'min_new',
max(CJ) 'max_new',
max(CJ)-min(CJ) 'newcha'
from 表一
group by YXDH) t1 on t2.YXDH=t1.YXDH
消息 102,级别 15,状态 1,第 14 行
'.' 附近有语法错误。程序:
update t_lqk_max_min_new
set t_lqk_max_min_new.new录取人数=t_lqk.cnt,
t_lqk_max_min_new.min_new=t_lqk.min_new,
t_lqk_max_min_new.max_new=t_lqk.max_new,
t_lqk_max_min_new.newcha=t_lqk.newcha
from t_lqk_max_min_new
left join
(select YXDH,
count(1) 'cnt',
min(CJ) 'min_new',
max(CJ) 'max_new',
max(CJ)-min(CJ) 'newcha'
from t_lqk
group by YXDH) t_lqk on t_lqk_max_min_new.YXDH=t_lqk.YXDH
set t_lqk_max_min_new.new录取人数=t_lqkt.cnt,
t_lqk_max_min_new.min_new=t_lqkt.min_new,
t_lqk_max_min_new.max_new=t_lqkt.max_new,
t_lqk_max_min_new.newcha=t_lqkt.newcha
from t_lqk_max_min_new
left join
(select YXDH,
count(1) 'cnt',
min(CJ) 'min_new',
max(CJ) 'max_new',
max(CJ)-min(CJ) 'newcha'
from t_lqk
group by YXDH) t_lqkt on t_lqk_max_min_new.YXDH=t_lqkt.YXDH