Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Архив вопросов и ответов (https://www.otvetnemail.ru/arhiv-voprosov-i-otvetov-805/)
-   -   Сравнение полей из одной таблицы со многими (https://www.otvetnemail.ru/arhiv-voprosov-i-otvetov-805/sravnenie-polej-iz-odnoj-tablicy-so-mnogimi-384406/)

Guest 16.10.2011 14:16

Сравнение полей из одной таблицы со многими
 
Есть таблица big, с одним полем partnumber - varchar(32). В ней записаны номера деталей.> SELECT * FROM big LIMIT 10;0011142261001115181000111522100011154 N100011163010001116320000AX1640100011441 0100011B412100011441610Таких номеров около 1млнЕсть несколько таблиц price1, price2, price3 и т.д. Количество может быть до 10 штук.В них 2 поля - partnumber - varchar(32) и price - varchar(8)> SELECT * FROM price1 limit 100011142261;63.7320011151810;123.396001 1152210;12.74640011154N10;14.10240011163 010;36.6120011163200;32.88300AX164010;14 6.7870011441010;10.8480011441210;5.69520 011441610;5.6952Нужно все номера из big прогнать по таблицам price[1-10] и выдать наименьшее значение price и следующее за ним.Делается это в лоб - php в цикле берет каждое значение из таблицы big, пишет в массив, сортирует по убывает и получает 0 и 1 позиции.В случае big - 1млн, 5шт price сравнивает порядка 20 мин. Как можно оптимизировать данный процесс?Скорость работы упирается в php. Можно-ли процесс сравнения переложить на плечи MySQL?


Часовой пояс GMT, время: 05:54.


© www.otvetnemail.ru - Форум вопросов и ответов.