Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

пРОБЛЕМА: сЛОЖНЫЕ зАПРОСЫ

6.2K
23 января 2004 года
petrick
5 / / 23.01.2004
Народ, плиз хелп. Не работают сложные запросы. Например на запрос "select * from post where id_post in (select id_post from postavka group by ib_post);" выдает: "error 1064 ... syntax error". Хотя по всем документациям, так должно работать. Может это и глюк, но повальный, ни у кого, где я пробывал, не работают сложныы запросы. В чем дело. Зарание благодарен за ответ.
348
24 января 2004 года
Saris
389 / / 14.03.2003
Цитата:
Originally posted by petrick
Народ, плиз хелп. Не работают сложные запросы. Например на запрос "select * from post where id_post in (select id_post from postavka group by ib_post);" выдает: "error 1064 ... syntax error". Хотя по всем документациям, так должно работать. Может это и глюк, но повальный, ни у кого, где я пробывал, не работают сложныы запросы. В чем дело. Зарание благодарен за ответ.


На каких СУБД пробовал??? Попробуй поставить полные пути в имени таблицы и столбца т.е:
"select * from USER.post where POST.id_post in (select POSTAVKA.id_post from USER.postavka group by POSTAVKA.ib_post);"

6.2K
24 января 2004 года
petrick
5 / / 23.01.2004
Цитата:
Originally posted by Saris

На каких СУБД пробовал??? Попробуй поставить полные пути в имени таблицы и столбца т.е:
"select * from USER.post where POST.id_post in (select POSTAVKA.id_post from USER.postavka group by POSTAVKA.ib_post);"



Порпробывал, не работает, а версия у меня стоит 4.0.12. Все, у кого не спрашивал, говорят, что такого быть не может. Также пробывал на других версиях, какие точно не помню, но одна из них шла вместе с денвером, который я решил поставить, когда у меня так мускул не зарабол. Также пробывал на версии, если не ошибаюсь, третей. Причем на разных компах.

348
24 января 2004 года
Saris
389 / / 14.03.2003
Цитата:
Originally posted by petrick


Порпробывал, не работает, а версия у меня стоит 4.0.12. Все, у кого не спрашивал, говорят, что такого быть не может. Также пробывал на других версиях, какие точно не помню, но одна из них шла вместе с денвером, который я решил поставить, когда у меня так мускул не зарабол. Также пробывал на версии, если не ошибаюсь, третей. Причем на разных компах.



Версия это конечно хорошо, но хотелось бы знать название СУБД, например IB, MYSql или ещё что :)
И ещё на какую часть запроса ругается???
И приведи если не трудно полный текст ошибки.
Просто запрос рабочий и синтаксически верный, поэтому теоритически могут быть траблы с диалектом SQL.

6.2K
24 января 2004 года
petrick
5 / / 23.01.2004
Цитата:
Originally posted by Saris


Версия это конечно хорошо, но хотелось бы знать название СУБД, например IB, MYSql или ещё что :)
И ещё на какую часть запроса ругается???
И приведи если не трудно полный текст ошибки.
Просто запрос рабочий и синтаксически верный, поэтому теоритически могут быть траблы с диалектом SQL.



MySql version 4.0.12.
Запрос верный и элементарный.
А вот полный текст ошибки:
"mysql>select * from post where id in (select id_post from postavka);
ERROR 1064: You have an error in youe SQL syntax/ Chek the manual that corresponds to your MySQL server version for the right syntax ti use near 'select id_pos from postavka)' at line 1"
просмотрел мануалы, там запрос написан также, но вот такие у меня глюки.

348
24 января 2004 года
Saris
389 / / 14.03.2003
Цитата:
Originally posted by petrick


MySql version 4.0.12.
Запрос верный и элементарный.
А вот полный текст ошибки:
"mysql>select * from post where id in (select id_post from postavka);
ERROR 1064: You have an error in youe SQL syntax/ Chek the manual that corresponds to your MySQL server version for the right syntax ti use near 'select id_pos from postavka)' at line 1"
просмотрел мануалы, там запрос написан также, но вот такие у меня глюки.


Покопался в доках и вроде нашёл. Похоже конструкция IN с подзапросами не работает в версиях ниже чем 4.1.
Вобщем сам почитай:
http://en.mysql.ru/doc/en/Subqueries.html
http://en.mysql.ru/doc/en/Rewriting_subqueries.html

6.2K
24 января 2004 года
petrick
5 / / 23.01.2004
Цитата:
Originally posted by Saris

Покопался в доках и вроде нашёл. Похоже конструкция IN с подзапросами не работает в версиях ниже чем 4.1.
Вобщем сам почитай:
http://en.mysql.ru/doc/en/Subqueries.html
http://en.mysql.ru/doc/en/Rewriting_subqueries.html



Спасибо за помощь, попробую скачать.
Но они весять по 25 метров своличи.
потом сообщу результат.

6.1K
28 января 2004 года
PeterV
13 / / 28.01.2004
Цитата:
Originally posted by petrick
Народ, плиз хелп. Не работают сложные запросы. Например на запрос "select * from post where id_post in (select id_post from postavka group by ib_post);" выдает: "error 1064 ... syntax error". Хотя по всем документациям, так должно работать. Может это и глюк, но повальный, ни у кого, где я пробывал, не работают сложныы запросы. В чем дело. Зарание благодарен за ответ.



Если ты так набрал и в программе, то действительно синтаксическая ошибка :)

select id:roll:_post from postavka group by ib:roll:_post

6.2K
28 января 2004 года
petrick
5 / / 23.01.2004
Цитата:
Originally posted by PeterV


Если ты так набрал и в программе, то действительно синтаксическая ошибка :)

select id:roll:_post from postavka group by ib:roll:_post



Когда поставил пятую версию мускала все заработало и никакой синтаксической ошибки.

437
11 февраля 2004 года
Lsd[52r]
106 / / 20.12.1999
Цитата:
Originally posted by petrick


Когда поставил пятую версию мускала все заработало и никакой синтаксической ошибки.



MySQL только с версии 5 удовлетворяет SQL92 (во всяком случае они так говорят), а следовательно и вложенные селекты появились только сейчас!

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог