powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Вероятное, но не очевидное
5 сообщений из 5, страница 1 из 1
Вероятное, но не очевидное
    #32277408
Osiris2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hi!

Возникла необходимость получить из базы последнию запись, но так что бы это было как можно быстрее и менее затратно относительно пересылки по сети.

Заранее благодарен.

P.S. Считайте, что:
1) База очень большая;
2) Сеть не очень быстрая;
3) Клиент ограничен в ресурсах, особенно памяти
...
Рейтинг: 0 / 0
Вероятное, но не очевидное
    #32277470
Макс М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
во-первых не из базы а из таблицы (или все же из базы ?)
Во-вторых в таблице нет понятия первая или последняя запись. Нужен критерии сортировки (поле или группа полей по которому сортировать будем).

В общем случае
SELECT * FROM tab ORDER BY field DESC LIMIT 0,1

по field нужен индекс.
Насколько мне известно mysql до какой-то версии не использует индекс при сортировке если там DESC используется.
...
Рейтинг: 0 / 0
Вероятное, но не очевидное
    #32277505
Osiris2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hi!

>во-первых не из базы а из таблицы
Да ошибся :)

>Во-вторых в таблице нет понятия первая или последняя запись. Нужен >критерии сортировки (поле или группа полей по которому сортировать будем).
Ну как там в таблице я спорить не буду (не давно только базами занялся), но я имел в виду последнию запись которую добавили в базу до запроса, самым простым из возможных способов
INSERT INTO table VALUES(.....);

>В общем случае
>SELECT * FROM tab ORDER BY field DESC LIMIT 0,1
Опробывал на первый взгляд все работает как надо :))
Большое спасибо!

Наверное седует указать для чего это необходимо.
Делаю я небольшую, в своих франкенштейновских интересах, :)
систему автоматического управления хим. установкой, и входе работы встал
очевидный вопрос об хранении результатов в легко доступной форме (для полседующей обработки).
Ну а так как MySQL дает возможность передовать данный через сеть, грех было не воспользоваться и не сделать утилиту удаленного мониторинга.
Сложности возникли т.к. пользовался для получения данных
SELECT * FROM tab,
а затем с помошью операторов MySQL API перемещался в самы конец полученного множества, что конечно не самый лучший способ.

Так, что если есть еще пара советов по оптимизации с удовольствием приму к сведенью :)
...
Рейтинг: 0 / 0
Вероятное, но не очевидное
    #32277838
Фотография mahoune
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все тебе правильно ответили и лучше не придумаешь. А что касается последней добавленой записи в принципе, то ставь timestamp на каждую запись, а дальше так же. Сортируешь по этому полю и выбираешь одну запись!
...
Рейтинг: 0 / 0
Вероятное, но не очевидное
    #32289447
alex_24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Макс М. > не прав. Может быть у него индекс автоинкриментарный!!!
Опа.
Вот тебе и упорядоченые данные. Сами собой.
Данные не упорядочены только не по отношению к автоинкрименту.

Можно применить LAST_INSERT_ID()

Или MAX по автоинкрименту выбрать.

Вообще - захиди ко мне на форум.
http://forum.webcommand.ru
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Вероятное, но не очевидное
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]