SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 14.03.2013 17:52:52

Graf_Vorontsov
Участник
Зарегистрирован: 14.03.2013
Сообщений: 2

Отобрать данные из одной таблицы по другой

Есть таблица с данными, есть другая таблица с данными соответствующими одному из столбцов основной таблице. Как выбрать все данные из таблицы 1 основываясь на данных из таблицы 2?

таблица 1 - 3 милиона записей
таблица 2 - 330 тысяч записей

так отбирает хорошо, но вручную я замахаюсь записи подставлять... записей 500 за раз можно вставить в  IN () только...

Код:

INSERT INTO `forever`.`tof_art_lookup_final`(`ARL_ART_ID`,`ARL_SEARCH_NUMBER`,`ARL_BRA_ID`,`ARL_DISPLAY_NR`) SELECT `ARL_ART_ID` ,`ARL_SEARCH_NUMBER`,`ARL_BRA_ID`,`ARL_DISPLAY_NR` FROM `forever`.`tof_art_lookup_sort` INNER JOIN `forever`.`vag_count` ON tof_art_lookup_sort.ARL_ART_ID = vag_count.ARL_ART_ID00 WHERE `ARL_ART_ID` IN (888967, 888987,..... и т.д. но тут много не вставишь)

кусочек из главной таблицы tof_art_lookup_sort

Код:

    
ARL_ART_ID  ARL_SEARCH_NUMBER  ARL_BRA_ID  ARL_DISPLAY_NR
1  063320055  95  0633  20055
1  63321510  95  6332 1510
1  731695001  2  731 695-001
2  731696001  2  731 696-001
3  K114V2365A  30  K1 (-) 14V 23/65A
3  731701001  2  731 701-001
3  0120488144  30  0 120 488 144
4  N114V3490A  30  N1 (-) 14V 34/90A
4  731702001  2  731 702-001
4  0986038340  30   0 986 038 340
4  037903018AX  587  037 903 018 AX

кусочек из таблицы по которой производится отбор vag_count

Код:

ARL_ART_ID00 

3

4

5

8

28

54

6

ARL_ART_ID = ARL_ART_ID00

проблема в том что в таблице tof_art_lookup_sort в поле ARL_ART_ID есть значения которые мне не нужны, мне нужны только те что соответствуют значениям в таблице vag_count

так не работает, но маленькие объёмы данных выгружает, пробовал на маленькой таблице vag_count 300 строк

Код:

INSERT INTO `tof_art_lookup_final`(`ARL_ART_ID`,`ARL_SEARCH_NUMBER`,`ARL_BRA_ID`,`ARL_DISPLAY_NR`)
SELECT
`tof_art_lookup_sort`.`ARL_ART_ID`,
`tof_art_lookup_sort`.`ARL_SEARCH_NUMBER`,
`tof_art_lookup_sort`.`ARL_BRA_ID`,
`tof_art_lookup_sort`.`ARL_DISPLAY_NR`
FROM `vag_count`
INNER JOIN`tof_art_lookup_sort` ON `tof_art_lookup_sort`.`ARL_ART_ID` = `vag_count`.`ARL_ART_ID00`

Отредактированно Graf_Vorontsov (14.03.2013 18:06:14)

Неактивен

 

#2 18.03.2013 17:57:16

Graf_Vorontsov
Участник
Зарегистрирован: 14.03.2013
Сообщений: 2

Re: Отобрать данные из одной таблицы по другой

хелп! неужели нельзя такое решить? Подскажите

Неактивен

 

#3 18.03.2013 23:49:33

evgeny
Гуру
Зарегистрирован: 04.05.2009
Сообщений: 335

Re: Отобрать данные из одной таблицы по другой

так не работает

как так ? есть ошибка ?

Если дублируются записи, к последнему запросу добавьте

GROUP BY `tof_art_lookup_sort`.`ARL_ART_ID`

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson