Ошибка 2006 - MySQL

Узнай цену своей работы

Формулировка задачи:

Помогите, пожалуйста!!! Лет 5 этот селект работал, вчера перестал
SELECT * FROM `log` WHERE id IN (SELECT id FROM log AS b WHERE (SELECT COUNT(*) FROM log AS c WHERE c.id >= b.id) <= 20) ORDER BY `crDate`,`crTime`
Теперь начал давать ошибку
SELECT * FROM `log` WHERE id in (SELECT id FROM log AS b WHERE (SELECT COUNT(*) FROM log AS c WHERE c.id >= b.id) <= 20) order by `crDate`,`crTime` LIMIT 0, 25 MySQL said: Documentation #2006 - MySQL server has gone away
Не пойму, в чём дело.
SELECT * FROM `log`
работает, но
SELECT id FROM log AS b WHERE (SELECT COUNT(*) FROM log AS c WHERE c.id >= b.id) <= 20
тоже дает ошибку 2006. Таблица целая. Есть экспорт из нее вчерашний, еще до ошибки. Заранее спасибо за помощь!!!!!!!!

Решение задачи: «Ошибка 2006»

textual
Листинг программы
SELECT * FROM log WHERE Id >= (SELECT MAX(Id) FROM orders) - 20 ORDER BY crDate, crTime

Объяснение кода листинга программы

В представленном коде выполняется запрос на выборку данных из таблицы log, при условии, что значение столбца Id больше или равно максимальному значению столбца Id из таблицы orders, уменьшенному на 20. Запрос также сортирует результаты по столбцам crDate и crTime. Вот список элементов кода с их названиями и значениями:

  1. SELECT * FROM log - выбираем все столбцы из таблицы log
  2. WHERE Id >= (SELECT MAX(Id) FROM orders) - 20 - устанавливаем условие для выборки, где значение столбца Id больше или равно максимальному значению столбца Id из таблицы orders, уменьшенному на 20
  3. ORDER BY crDate, crTime - сортируем результаты по столбцам crDate и crTime

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

8   голосов , оценка 3.875 из 5