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

SELECT *
FROM dt_any
WHERE id = 3566

задача в том что б получить одну предыдущую запись перед этой, с айди 3566

как это сделать, подскажите пожалуйста
...
Рейтинг: 0 / 0
помогите с выборкой
    #32511059
labadiena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я предпологаю что так, но может я ошибаюсь
SELECT *
FROM dt_any
WHERE id < 3566
LIMIT 1
...
Рейтинг: 0 / 0
помогите с выборкой
    #32511064
labadiena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
так я и думал
вытаскивает первую запись

как быть ???
...
Рейтинг: 0 / 0
помогите с выборкой
    #32511135
labadiena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
постораюсь по понятней

зная конкретный номер id (например 3566), нужно получить (при выплнении пхп скрипта) записи из поля стоящего перед записью с id 3566 (возможно 3565, если до этого никакие записи не удолялись)
...
Рейтинг: 0 / 0
помогите с выборкой
    #32511151
labadiena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SELECT *
FROM dt_any
WHERE id < 3566
ORDER BY id DESC
LIMIT 1
...
Рейтинг: 0 / 0
помогите с выборкой
    #32511214
Макс М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В таблице данные неупорядочены. Нет первой записи, нет последней записи, после записи с ID = XXX никакая запись не стоит и перед ней нет никакой записи.
Вообще таблицы (теорию тоже надо учить) - это множества записей. А множества по своему определению неупорядочены.
Но программист может упорядочить выборки (результаты SELECT-запросов).

Обычно когда сортируют по ID - это ошибка проэктирования БД (ИМХО).
ID - это уникальный идентификатор, а не порядковый номер
...
Рейтинг: 0 / 0
помогите с выборкой
    #32511445
labadiena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо,
обязательно приму к сведенью
...
Рейтинг: 0 / 0
помогите с выборкой
    #32511450
labadiena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и Ваше решение???
забыл спросить...
...
Рейтинг: 0 / 0
помогите с выборкой
    #32511527
Макс М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну решение здесь зависит от задачи.
В общем случае ИМХО стоит избегать запросов типа
SELECT * FROM tab
и четко указывать по какому полю/полям происходит сортировка
Часто вместо используемвой тобой сортировки по ID можно использовать сортировку по времени добавления записи в таблицу
...
Рейтинг: 0 / 0
помогите с выборкой
    #32511935
labadiena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
понятно, хорошее предложение ....

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


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