powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Не получаются вложенные запросы
14 сообщений из 14, страница 1 из 1
Не получаются вложенные запросы
    #33122098
Илья*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужно сделать достаточно простую вещь:
Сначала из базы по заданному условию выбрать только первые десять записей.
Затем из найденных записей выбрать записи, отвечающие ещё одному условию.
Как это сделать одним запросом?
Подозреваю, что с помощью вложенного запроса но вот то, что я пробывал, постоянно выдают синтаксическую ошибку.
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122139
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну что тебе сказать про Сахалин ? Он большой, про всё сразу и не скажешь...
Но есть подозрение, что ошибка у тебя в 17 строке.
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122184
Илья*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я себе это представлял вот так, но это не работает:
SELECT DISTINCT word
FROM main
WHERE word IN (
SELECT word
FROM main
LIMIT 0,10 )
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122188
Welly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Илья*Подозреваю, что с помощью вложенного запроса но вот то, что я пробывал, постоянно выдают синтаксическую ошибку.
Подозреваю, что ваш сервер надо проверить на совместимость с этой фичей. Подсказываю, версия должна быть >= 4.1
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122243
Илья*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, Вы оказались правы:
MySQL 4.0.18 на localhost

Ну надо же! Потратил часа 3 на то чтобы это узнать! :-((

Есть ли другой выход решить указанную задачу?
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122251
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Илья*Я себе это представлял вот так, но это не работает:
SELECT DISTINCT word
FROM main
WHERE word IN (
SELECT word
FROM main
LIMIT 0,10 )

Вложенный запрос (которые поддерживаются с 4.1) бессмысленен без сортировки.
А во-вторых, почему не написать
Код: plaintext
1.
2.
SELECT DISTINCT word
FROM main
LIMIT  0 , 10 
?
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122269
Фотография Berkut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Johnmen
Вложенный запрос (которые поддерживаются с 4.1) бессмысленен без сортировки

А почему?
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122271
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Berkut Johnmen
Вложенный запрос (которые поддерживаются с 4.1) бессмысленен без сортировки

А почему?

Потому, что не определён порядок выдачи.
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122343
Илья*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Johnmen
А во-вторых, почему не написать
Код: plaintext
1.
2.
SELECT DISTINCT word
FROM main
LIMIT  0 , 10 
?

не подходит для моей задачи (я не совсем верный пример привел). Вот что мне нужно
сначала идёт запрос:
SELECT * FROM main WHERE ass IS NOT NULL ORDER BY ratio LIMIT 0,10
а потом уже из полученных результатов надо
SELECT DISTINCT word FROM (полученные результаты после первого запроса)
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122358
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Илья* Johnmen
А во-вторых, почему не написать
Код: plaintext
1.
2.
SELECT DISTINCT word
FROM main
LIMIT  0 , 10 
?

не подходит для моей задачи (я не совсем верный пример привел). Вот что мне нужно
сначала идёт запрос:
SELECT * FROM main WHERE ass IS NOT NULL ORDER BY ratio LIMIT 0,10
а потом уже из полученных результатов надо
SELECT DISTINCT word FROM (полученные результаты после первого запроса)

Так в чём проблема ?

Код: plaintext
SELECT DISTINCT word FROM main WHERE ass IS NOT NULL ORDER BY ratio LIMIT  0 , 10 

ЗЫ Интересное название поля - "задница"
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122361
RFT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выбирать людей по размеру задницы хочешь? Самых толстых? Или самых красивых???
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122384
Фотография Berkut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JohnmenПотому, что не определён порядок выдачи.
Дык, а разве не все ли равно определен порядок выдачи во вложенном запросе или нет (в общем случае)? Иногда ведь реально возникают задачи, например, выбрать строки из таблицы, совпадающие по значениям строк из другой. В последнем случае строки второй таблицы могут выбираться только лишь соответствуя какому-то ограничению в предложении WHERE ....
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122420
Илья*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Johnmen
Так в чём проблема ?

Код: plaintext
SELECT DISTINCT word FROM main WHERE ass IS NOT NULL ORDER BY ratio LIMIT  0 , 10 

ЗЫ Интересное название поля - "задница"

Нет, не выйдет. В этом случае она отберёт 10 различных word из всей базы (и отсортирует найденное по ratio), а мне надо, чтобы она сначала отсортировала все записи по ratio, а потом выбрала из первых десяти различные word.

Название поля ass, сокращенное от assasiation (ассоциация). Когда я его выбирал, подумал, да всё-равно никто не увидит, зато прикольно. Ошибся...:-)
...
Рейтинг: 0 / 0
Не получаются вложенные запросы
    #33122713
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Илья*Да, Вы оказались правы:
MySQL 4.0.18 на localhost

Ну надо же! Потратил часа 3 на то чтобы это узнать! :-((

Есть ли другой выход решить указанную задачу?
Средствами клиента. См. Cook room.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Не получаются вложенные запросы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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