|
|
|
Не получаются вложенные запросы
|
|||
|---|---|---|---|
|
#18+
Нужно сделать достаточно простую вещь: Сначала из базы по заданному условию выбрать только первые десять записей. Затем из найденных записей выбрать записи, отвечающие ещё одному условию. Как это сделать одним запросом? Подозреваю, что с помощью вложенного запроса но вот то, что я пробывал, постоянно выдают синтаксическую ошибку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 15:12 |
|
||
|
Не получаются вложенные запросы
|
|||
|---|---|---|---|
|
#18+
Ну что тебе сказать про Сахалин ? Он большой, про всё сразу и не скажешь... Но есть подозрение, что ошибка у тебя в 17 строке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 15:23 |
|
||
|
Не получаются вложенные запросы
|
|||
|---|---|---|---|
|
#18+
Я себе это представлял вот так, но это не работает: SELECT DISTINCT word FROM main WHERE word IN ( SELECT word FROM main LIMIT 0,10 ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 15:40 |
|
||
|
Не получаются вложенные запросы
|
|||
|---|---|---|---|
|
#18+
Илья*Подозреваю, что с помощью вложенного запроса но вот то, что я пробывал, постоянно выдают синтаксическую ошибку. Подозреваю, что ваш сервер надо проверить на совместимость с этой фичей. Подсказываю, версия должна быть >= 4.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 15:41 |
|
||
|
Не получаются вложенные запросы
|
|||
|---|---|---|---|
|
#18+
Да, Вы оказались правы: MySQL 4.0.18 на localhost Ну надо же! Потратил часа 3 на то чтобы это узнать! :-(( Есть ли другой выход решить указанную задачу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 15:59 |
|
||
|
Не получаются вложенные запросы
|
|||
|---|---|---|---|
|
#18+
Илья*Я себе это представлял вот так, но это не работает: SELECT DISTINCT word FROM main WHERE word IN ( SELECT word FROM main LIMIT 0,10 ) Вложенный запрос (которые поддерживаются с 4.1) бессмысленен без сортировки. А во-вторых, почему не написать Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 16:01 |
|
||
|
Не получаются вложенные запросы
|
|||
|---|---|---|---|
|
#18+
Johnmen Вложенный запрос (которые поддерживаются с 4.1) бессмысленен без сортировки А почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 16:07 |
|
||
|
Не получаются вложенные запросы
|
|||
|---|---|---|---|
|
#18+
Berkut Johnmen Вложенный запрос (которые поддерживаются с 4.1) бессмысленен без сортировки А почему? Потому, что не определён порядок выдачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 16:07 |
|
||
|
Не получаются вложенные запросы
|
|||
|---|---|---|---|
|
#18+
Johnmen А во-вторых, почему не написать Код: plaintext 1. 2. не подходит для моей задачи (я не совсем верный пример привел). Вот что мне нужно сначала идёт запрос: SELECT * FROM main WHERE ass IS NOT NULL ORDER BY ratio LIMIT 0,10 а потом уже из полученных результатов надо SELECT DISTINCT word FROM (полученные результаты после первого запроса) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 16:35 |
|
||
|
Не получаются вложенные запросы
|
|||
|---|---|---|---|
|
#18+
Илья* Johnmen А во-вторых, почему не написать Код: plaintext 1. 2. не подходит для моей задачи (я не совсем верный пример привел). Вот что мне нужно сначала идёт запрос: SELECT * FROM main WHERE ass IS NOT NULL ORDER BY ratio LIMIT 0,10 а потом уже из полученных результатов надо SELECT DISTINCT word FROM (полученные результаты после первого запроса) Так в чём проблема ? Код: plaintext ЗЫ Интересное название поля - "задница" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 16:42 |
|
||
|
Не получаются вложенные запросы
|
|||
|---|---|---|---|
|
#18+
JohnmenПотому, что не определён порядок выдачи. Дык, а разве не все ли равно определен порядок выдачи во вложенном запросе или нет (в общем случае)? Иногда ведь реально возникают задачи, например, выбрать строки из таблицы, совпадающие по значениям строк из другой. В последнем случае строки второй таблицы могут выбираться только лишь соответствуя какому-то ограничению в предложении WHERE .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 16:49 |
|
||
|
Не получаются вложенные запросы
|
|||
|---|---|---|---|
|
#18+
Johnmen Так в чём проблема ? Код: plaintext ЗЫ Интересное название поля - "задница" Нет, не выйдет. В этом случае она отберёт 10 различных word из всей базы (и отсортирует найденное по ratio), а мне надо, чтобы она сначала отсортировала все записи по ratio, а потом выбрала из первых десяти различные word. Название поля ass, сокращенное от assasiation (ассоциация). Когда я его выбирал, подумал, да всё-равно никто не увидит, зато прикольно. Ошибся...:-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 17:04 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=33122184&tid=1853930]: |
0ms |
get settings: |
8ms |
get forum list: |
21ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
164ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 201ms |
| total: | 475ms |

| 0 / 0 |
