Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Zapros s vlozhennym zaprosom / 13 сообщений из 13, страница 1 из 1
17.02.2003, 22:30
    #32107619
Shakhno
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
FORUM.

Pri razbivke na stanitsy (vyvod n topikov na stranitsu) voznukaet nekaya problema.
Pri vyvode pervoj stranitsy problem net
SELECT top 10 M_id, parent, datein, thread, update
FROM messages
WHERE parent = 0
order by update desc, datein desc, thread desc, parent


odnako pri vyvode vtoroj stranitsy server visnet

SELECT TOP 10 M_id, thread, parent, author, subject, email, host, datein, update
FROM messages
where M_id not in (
SELECT top 10 M_id
FROM messages
ORDER BY update desc, datein desc, thread desc, parent
)
ORDER BY update desc, datein desc, thread desc, parent

prichem s odnim ORDER BY vse rabotaet, s dvumya nikak...

V chem grabli???
...
Рейтинг: 0 / 0
18.02.2003, 07:36
    #32107655
AlexEV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
А зачем нужен внутренний ORDER BY?
...
Рейтинг: 0 / 0
18.02.2003, 07:37
    #32107656
AlexEV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
кстати, такие вопросы лучше задавать не на форуме Access, а на форуме по MS SQL Server
...
Рейтинг: 0 / 0
18.02.2003, 09:38
    #32107678
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
какой из серверов виснет?
MSSQL?
iis?

или это запрос к бд аксесс ?

если это к аксессу
обрати внимание что во втором запросе ты не включешь в
where parent = 0 и возможно выборка ведется по большому числу записей.

Следует учесть что подчиненные запросы в Ассеss работают очень медленно .

Особено при большом объееме данных.

пробовал запустить запрос с подчиненным и подчиненным второго уровня - при числе записей выборки до 50 - моментально.
при 100 - 5 минут
при 200 - не смог дождаться
...
Рейтинг: 0 / 0
18.02.2003, 14:07
    #32107956
Shakhno
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
АлексейК :

ochevidno delo v etom... v baze (access) bol'she 10 000 zapisej...
est' li vyxod?
(v MySQL est' ochen' priyatnaya vesch' - "LIMIT 10,20", est' li nechno podobnoe v access?)
...
Рейтинг: 0 / 0
18.02.2003, 15:40
    #32108104
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
во второй запрос поставь то?


WHERE parent = 0
...
Рейтинг: 0 / 0
18.02.2003, 16:56
    #32108188
Shakhno
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
Nichego eto ne menyaet...(where parent = 0) vremya otveta beskonechno.
Vmesto 10 000 vybiraetsya 5 000, chto odno i tozhe v dannom sluchae...
...
Рейтинг: 0 / 0
18.02.2003, 16:56
    #32108189
mahoune
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
Не очень врубился в суть вопроса, но метод решения следующий. Есть определенный план сортировки естественно к нему есть обратный, а следовательно:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
 -- Выбираем с 30 по 50 (Сортировка по id возрастающая)
 
SELECT TOP  50 - 30  id, name, sur_name FROM
(
  SELECT TOP  50 - 30  id, name, sur_name FROM
  (
    SELECT TOP  30 + 50  id, name, sur_name
    ORDER BY id
  )
  ORDER BY id DESC
)
ORDER BY id
...
Рейтинг: 0 / 0
18.02.2003, 17:09
    #32108200
Shakhno
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
The SELECT statement includes a reserved word or an argument name that is misspelled or missing, or the punctuation is incorrect.

Rugaetsya na "50-30"
...
Рейтинг: 0 / 0
18.02.2003, 18:50
    #32108290
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
у махбоуна видимо свой язык запросов ...))

если страничка формируется скриптом поддерживающим адо
то я бы посоветовал попробовать формировать список рекордсетом
...
Рейтинг: 0 / 0
19.02.2003, 08:16
    #32108427
Sergey A.Ledenev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
Я тоже парился со вложенными запросами. Правда, проблема была в другом: Когда работал с таблицами аксесса, все летало. Подключился к БД на MySQL, тормоза. Оно и понятно, MySQL вложенных запросов не держит. Все побил на запросики, писал во временные таблицы. Все заработало достаточно шустро. Мож и тебе поможет?
...
Рейтинг: 0 / 0
19.02.2003, 16:10
    #32108888
assa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
В общем случае для Access много (пара порядков) быстрее вместо in(select ...) сконструировать In([список]). Например юзать в условии:

Function sql_in (table_name As String, Field_name As String) As String

Dim DB As Database, RS As Recordset
Dim strSQL As String

Set DB = CurrentDB()
strSQL = "SELECT DISTINCT [" & table_name & "].[" & Field_name & "] FROM [" & table_name & "];"
Set RS = DB.OpenRecordset(strSQL)

sql_in = ""
If RS.BOF And RS.EOF Then Exit Function

RS.MoveFirst

strSQL = " In("
strSQL = strSQL & Chr(34) & RS.Fields(Field_name).value & Chr(34)
RS.MoveNext
While RS.EOF = False
strSQL = strSQL & "," & Chr(34) & RS.Fields(Field_name).value & Chr(34)
RS.MoveNext
Wend
sql_in = strSQL & ") "

End Function
...
Рейтинг: 0 / 0
25.02.2003, 17:21
    #32111013
Yola
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Zapros s vlozhennym zaprosom
Дети, не ходите в Африку гулять! Ни за что на свете!!!

Создайте поле msgnum и нумеруйте его по возрастанию.
При удалении из базы перенумеровавайте.
Некоторая задержка при удалении и совсем маленькая при добавлении. Но зато при простом просмотре пользователь не страдает.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Zapros s vlozhennym zaprosom / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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