Заранее благодарим за то, что нашли время, чтобы прочитать мой вопрос. Я использую MySQL и Python вместе, и я выполнение первого этой команде SQLQuery stuck copy in tmp table в течение длительного времени
SELECT T1.col1 AS t, T1.col4 AS d, T2.col3 AS e, T2.col4 AS d, T2.col7 AS p,
T2.col13 AS de,
T2.col5 AS carrier, T2.col12 AS f, T2.col10 AS c
FROM table AS T1
JOIN table_c AS T2 ON T1.col1 = T2.col1
ORDER BY RAND()
LIMIT 100000 ;
Базы данных, я работаю на довольно большие (Т1 300 000 000 линий и Т2 300 000 строк) и я создал их благодаря phpMyAdmin. Я создал индексы также на col1 of T1
и col1 of T2
. Но когда я запускаю команду SQL, она застревает при копировании в tmp
сообщение о фазовой таблице (я оставил его на весь уик-энд и все еще в одной точке)
Я попытался изменить параметр tmp_table_size, но он не изменился ничего
Я понятия не имею, что может быть решение для меня, чтобы выполнить эту команду в разумные сроки
Все предложения приветствуются
Большое вам спасибо за вашу помощь
Пожалуйста, удалите ORDER BY и п LIMIT и дайте нам знать, сколько строк она возвращает, и в какие сроки , Также, пожалуйста, объясните, что вы пытаетесь сделать. Зачем возвращать 100 000 случайных строк? –
привет спасибо за ответ, я их вынул, и запрос прошел гладко, так как я нуждался в нем просто как дополнение, чтобы получить самый значительный набор данных, я думаю, что я возьму «ORDER BY RAND()» для ускорения запрос – Rim