Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.17;
Скачать: CL | DM;

Вниз

MySQL. Вложенные запросы   Найти похожие ветки 

 
Дмитрий Д.   (2006-07-14 16:13) [0]

Пытаюсь выполнить запрос:
SELECT Message_ID FROM Message38 WHERE Priority < (SELECT Priority FROM Message38 WHERE Message_ID=4)

В результате ошибка синтаксиса :(
Думаю смысел ясен, что надо получить. На сервере стоит MySQL 4.1


 
Johnmen ©   (2006-07-14 16:21) [1]

Текст ошибки?


 
MsGuns ©   (2006-07-14 16:21) [2]

В запросе неоднозначность - т.е. вместо одного значения подзапрос молжет венрнуть несколько.
ИМХО, следует использовать конструкцию EXIST или IN


 
Desdechado ©   (2006-07-14 16:25) [3]

А через соединение таблиц не получится?


 
Ломброзо ©   (2006-07-14 16:27) [4]

>В запросе неоднозначность - т.е. вместо одного значения подзапрос молжет
>венрнуть несколько.

Не факт. Эта ошибка возникнет только на этапе исполнения, если подзапрос действительно возвращает несколько записей.

А что с версией MySQL? Подзапросы поддерживаются только начиная с версии 4.1.7.


 
Дмитрий Д.   (2006-07-14 16:30) [5]

Упс, извиняюсь! На срвере стоит MySQL 4.0.27
Соответственно вложенные запросы не поддерживаются :-( Прошляпил...
Тогда как переписать это выражение, чтобы оно работало на данной версии?
К сожалению я не силён во всяческих объединения типа UNION, INNER JOIN и т.д.


 
Ломброзо ©   (2006-07-14 16:34) [6]

Никак. Только через сохранение временной переменной в вызывающем коде.

Хотя... Вроде бы как там есть что-то вроде временных параметров, с префиксом "@". Точно не помню... пошукайте в документации. Суть в том, что на сервер можно послать пакет команд через точку с запятой и сохранять промежуточные результаты в этих вот параметрах.


 
Johnmen ©   (2006-07-14 16:40) [7]

Что-то типа того
SELECT T1.Message_ID
FROM Message38 T1, Message38 T2
WHERE (T1.Priority < T2.Priority) AND (T2.Message_ID=4)



Страницы: 1 вся ветка

Текущий архив: 2006.09.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.052 c
2-1157012712
Perf2k2
2006-08-31 12:25
2006.09.17
Как лучше подключаться к MySQL через Delphi


3-1152797535
samalex
2006-07-13 17:32
2006.09.17
не работает функция upper


15-1156810340
бегинка
2006-08-29 04:12
2006.09.17
делфи


2-1156931290
!aLeXa!
2006-08-30 13:48
2006.09.17
Как рисовать оружность на Canvas?


3-1152568889
the_kola
2006-07-11 02:01
2006.09.17
Пустая БД Access