Если я сделаю запрос по '08', поищу в таблице1 id_code1 в позиции 3, то получу, какой id_code1 содержит '08', затем выберу данные из таблицы2 и получу id_code2 для выбора данных из таблицы3
У меня есть3 таблицы, Таблица 1. содержит id_code1 и id_code2, которые представляют собой строку
table1
id_code1 | id_code2
----------+--------------
1008SD7X | M71X456700
1008DG5B | N71X456800
100894EX | P71X456900
1064TESE | Q71X456135
19745EGS | R71X456789
10DFEE77 | S71X456239
1EERSD7X | S86X436477
table2 содержит id_code1, data1, data2,data3
id_code1 | data1 | data2 | data3 |
----------+----------+---------+---------+
1008SD7X | 12.9 | 10 | 7.5 |
1008DG5B | 13.8 | 10 | 4.2 |
100894EX | 15.4 | 11 | 3.0 |
1064TESE | 12.7 | 12 | 2.5 |
19745EGS | 14.2 | 12 | 5.5 |
10DFEE77 | 12.5 | 11 | 4.7 |
1EERSD7X | 15.5 | 10 | 3.5 |
table3 содержит id_code2, data4, data5, data6
id_code1 | data4 | data5 | data6 |
-----------+--------+---------+-------+
M71X456700 | 29 | 11 | 5 |
N71X456800 | 38 | 18 | 2 |
P71X456900 | 34 | 11 | 3 |
Q71X456135 | 47 | 12 | 5 |
R71X456789 | 12 | 14 | 5 |
S71X456239 | 15 | 11 | 4 |
S86X436477 | 15 | 19 | 3 |
Теперь я не могу выбрать table3 с таблицей2
select table3.* from table3
where table3.id_code2 in
( select table1.id_code2
from table1 where
locate('08',table1.id_code1)=3)
id_code1 | data4 | data5 | data6 |
-----------+--------+---------+-------+
M71X456700 | 29 | 11 | 5 |
N71X456800 | 38 | 18 | 2 |
P71X456900 | 34 | 11 | 3 |
Я ожидаю такой результат
id_code1 | id_code2 | data1 | data2 | data3 | data4 | data5 | data6
----------+-----------+--------+---------+--------+--------+--------+-------
1008SD7X |M71X456700 | 12.9 | 10 | 7.5 | 29 | 11 | 5 |
1008DG5B |N71X456800 | 13.8 | 10 | 4.2 | 38 | 18 | 2 |
100894EX |P71X456900 | 15.4 | 11 | 3.0 | 34 | 11 | 3 |