У меня есть 3 таблицы:
tbl_indicator
grp_nbr, sect_nbr, indicat
1 100 p
2 101 s
tbl_group
grp_id, grp_nbr, sect_nbr, indicat
333 1 100 a
555 1 100 p
444 2 101 s
222 2 101 y
Здесь (в tbl_group
) grp_id - это первичный ключ
tbl_order
order_id, grp_id
5000 333
5001 555
5002 555
5003 555
5004 444
5005 444
5006 222
Здесь (в tbl_order
) grp_id
является внешним ключом для grp_id
в tbl_group
.
В таблице tbl_indiactor для одного набора grp_nbr и sect_nbr есть указатель, для того же набора grp_nbr и sect_nbr есть правильный указатель (555, 1, 100, p) и признак барахла (333, 1, 100, а) в таблице tbl_group, но оба эти grp_id (333, 555) присутствуют в таблице tbl_orders.
Теперь мне нужно обновить таблицу tbl_order таким образом, чтобы заменить ненужные grp_id на правильные grp_id s
Вывод должен выглядеть так:
tbl_orders
order_id, grp_id
5000 555
5001 555
5002 555
5003 555
5004 444
5005 444
5006 444
здесьнебольшое изменение
tbl_indicator
grp_nbr, sect_nbr, признак
01 100 p
02 101 с tbl_group
grp_id, grp_nbr, sect_nbr, признак
333 01 100 a
555 01 100 p
444 02 101 с 222 2 101 y Здесь (в tbl_group) grp_id - это первичный ключ
нежелательные данные (показатели) в групповой таблице (222,22, 101, у) grp_nbr имеет одну длину символа, но grp_nbr в tbl_indicat имеет длину два символа ... как мы можем справиться с этим ??