
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
07.05.2004, 17:22:41
|
|||
|---|---|---|---|
|
|||
помогите с выборкой |
|||
|
#18+
предположим есть такой запрос: SELECT * FROM dt_any WHERE id = 3566 задача в том что б получить одну предыдущую запись перед этой, с айди 3566 как это сделать, подскажите пожалуйста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.05.2004, 17:33:19
|
|||
|---|---|---|---|
|
|||
помогите с выборкой |
|||
|
#18+
я предпологаю что так, но может я ошибаюсь SELECT * FROM dt_any WHERE id < 3566 LIMIT 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.05.2004, 17:36:50
|
|||
|---|---|---|---|
|
|||
помогите с выборкой |
|||
|
#18+
так я и думал вытаскивает первую запись как быть ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.05.2004, 18:28:16
|
|||
|---|---|---|---|
|
|||
помогите с выборкой |
|||
|
#18+
постораюсь по понятней зная конкретный номер id (например 3566), нужно получить (при выплнении пхп скрипта) записи из поля стоящего перед записью с id 3566 (возможно 3565, если до этого никакие записи не удолялись) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.05.2004, 18:39:25
|
|||
|---|---|---|---|
|
|||
помогите с выборкой |
|||
|
#18+
SELECT * FROM dt_any WHERE id < 3566 ORDER BY id DESC LIMIT 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.05.2004, 19:34:30
|
|||
|---|---|---|---|
помогите с выборкой |
|||
|
#18+
В таблице данные неупорядочены. Нет первой записи, нет последней записи, после записи с ID = XXX никакая запись не стоит и перед ней нет никакой записи. Вообще таблицы (теорию тоже надо учить) - это множества записей. А множества по своему определению неупорядочены. Но программист может упорядочить выборки (результаты SELECT-запросов). Обычно когда сортируют по ID - это ошибка проэктирования БД (ИМХО). ID - это уникальный идентификатор, а не порядковый номер ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.05.2004, 14:17:37
|
|||
|---|---|---|---|
|
|||
помогите с выборкой |
|||
|
#18+
спасибо, обязательно приму к сведенью ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.05.2004, 14:25:04
|
|||
|---|---|---|---|
|
|||
помогите с выборкой |
|||
|
#18+
и Ваше решение??? забыл спросить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.05.2004, 17:12:47
|
|||
|---|---|---|---|
помогите с выборкой |
|||
|
#18+
ну решение здесь зависит от задачи. В общем случае ИМХО стоит избегать запросов типа SELECT * FROM tab и четко указывать по какому полю/полям происходит сортировка Часто вместо используемвой тобой сортировки по ID можно использовать сортировку по времени добавления записи в таблицу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.05.2004, 10:44:29
|
|||
|---|---|---|---|
|
|||
помогите с выборкой |
|||
|
#18+
понятно, хорошее предложение .... просто база была смоделирована и вней есть поле с временем добавления, но оно меняется на одну секунду гдето через 5000 записей ... считаю это упущением, надо подправить ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&mobile=1&tid=1855173]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
158ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
37ms |
get tp. blocked users: |
2ms |
| others: | 252ms |
| total: | 492ms |

| 0 / 0 |
