Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Где ошибка в запросе SQL? / 21 сообщений из 21, страница 1 из 1
24.07.2004, 23:05:37
    #32620148
Ukraina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
SELECT [q].Товар, [q].Наименование, [q].Категория, Sum([q].I) AS [Sum-I]
FROM [SELECT [q1].[Товар], [q1].[Наименование], [q1].[Категория], [q1].[Итого] as [II] FROM (SELECT [Запрос итого по складу].Товар, [Запрос итого по складу].Наименование, [Запрос итого по складу].Категория, [Запрос итого по складу].Итого FROM (Запрос итого по складу] IN 'C:\Base.mdb') as q1 GROUP BY [q1].[Товар], [q1].[Наименование], [q1].[Категория], [q1].[Итого])
UNION ALL Select [q2].[Товар], [q2].[Наименование],[q2].[Категория], [q2].[Итого] as [II] FROM (SELECT [Запрос итого по складу].Товар, [Запрос итого по складу].Наименование, [Запрос итого по складу].Категория, [Запрос итого по складу].Итого FROM [Запрос итого по складу] IN 'C:\Electra.mdb') as q2 GROUP BY [q2].[Товар], [q2].[Наименование], [q2].[Категория],[q2].[Итого]]. AS q
GROUP BY [q].Товар, [q].Наименование, [q].Категория;

Не могу понять где ошибка. Выдает сообщение: «Ошибка синтаксиса в предложении FROM»
В настоящее время выкручиваюсь создавая запрос на основании запроса, а хочется все в одном запросе уместить. И вообще то что я пытаюсь это принципиально правильно?
2. А можно как нибудь программно изменять параметр IN, т.е. 'C:\Base.mdb', ну типа CurrentProject.Path & 'C:\Base.mdb'
...
Рейтинг: 0 / 0
24.07.2004, 23:25:55
    #32620154
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Ukraina(Запрос итого по складу]
Это так модно - разные скобки с разных сторон?
...
Рейтинг: 0 / 0
25.07.2004, 00:18:25
    #32620164
Ukraina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Саныч исправил, но теперь дает ошибку на объединение
...
Рейтинг: 0 / 0
25.07.2004, 00:23:01
    #32620165
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Показывай, как стало после исправления.
...
Рейтинг: 0 / 0
25.07.2004, 00:23:44
    #32620166
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
И какой текст ошибки?
...
Рейтинг: 0 / 0
25.07.2004, 00:26:00
    #32620167
Ukraina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
"Ошибка синтаксиса в запросе на объединение"
...
Рейтинг: 0 / 0
25.07.2004, 00:26:22
    #32620168
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Владимир СанычПоказывай, как стало после исправления.
...
Рейтинг: 0 / 0
25.07.2004, 21:50:51
    #32620380
Ukraina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Саныч!
Вчера вылетел интернет с телефоном не смог ответить. После исправлений: Ошибка синтекса объединения.
Ну не ужели придется запрос на основании запроса делать? Может быть все в одном?
Ох не легкая эта работа:из болота тащить бегемота...!?
...
Рейтинг: 0 / 0
25.07.2004, 21:57:38
    #32620382
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
UkrainaПосле исправлений: Ошибка синтекса объединения.
Это ты уже писал. Запрос показывай. Я не умею отлаживать программы, не видя их.
...
Рейтинг: 0 / 0
25.07.2004, 22:14:23
    #32620391
Ukraina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
SELECT [q].Товар, [q].Наименование, [q].Категория, Sum([q].I) AS [Sum-I]
FROM [SELECT [q1].[Товар], [q1].[Наименование], [q1].[Категория], [q1].[Итого] as [I] FROM (SELECT [Запрос итого по складу].Товар, [Запрос итого по складу].Наименование, [Запрос итого по складу].Категория, [Запрос итого по складу].Итого FROM (Запрос итого по складу) IN 'C:\Program Files\GKVOfficeWork\MY\Serpay\01\Serpay_Base.mdb') as q1 GROUP BY [q1].[Товар], [q1].[Наименование], [q1].[Категория], [q1].[Итого])
UNION ALL Select [q2].[Товар], [q2].[Наименование],[q2].[Категория], [q2].[Итого] as [I] FROM (SELECT [Запрос итого по складу].Товар, [Запрос итого по складу].Наименование, [Запрос итого по складу].Категория, [Запрос итого по складу].Итого FROM [Запрос итого по складу] IN 'C:\Program Files\GKVOfficeWork\MY\Serpay\01\Serpay_Electra.mdb') as q2 GROUP BY [q2].[Товар], [q2].[Наименование], [q2].[Категория],[q2].[Итого]]. AS q
GROUP BY [q].Товар, [q].Наименование, [q].Категория;

Так он типа был вначале, могет я чаго не понял, так в каком виде Вам выслать запрос? Я исправил, так он дал "ошибка синтаксиса на объединение" и самое веселое не дает сохранить.

Примечание:
когда я пишу отдельный запрос типа:
SELECT [q].Товар, [q].Наименование, [q].Категория, Sum([q].I) AS [Sum-I]
FROM [SELECT [2].[Товар], [2].[Наименование], [2].[Категория], [2].[Код], [2].[Итого] as [I] FROM 2 GROUP BY [2].[Товар], [2].[Наименование], [2].[Категория], [2].[Код], [2].[Итого]
UNION ALL Select [3].[Товар], [3].[Наименование],[3].[Категория],[3].[Код], [3].[Итого] as [I] FROM 3 GROUP BY [3].[Товар], [3].[Наименование], [3].[Категория], [3].[Код],[3].[Итого]]. AS q
GROUP BY [q].Товар, [q].Наименование, [q].Категория;

где "2" это
SELECT [Запрос итого по складу].Товар, [Запрос итого по складу].Наименование, [Запрос итого по складу].Категория, [Запрос итого по складу].Код, [Запрос итого по складу].Итого
FROM [Запрос итого по складу] IN 'F:\GKVSoft\Serpay\02\Serpay_Electra.mdb';
а "3" соответственно другой абсолютно аналогичный запрос, то все работает.

Но стоит мне вогнать напрямую вместо "2" И ВМЕСТО "3". ТО ВОЗНИКАЮТ СООТВЕТСТВУЮЩИЕ ПРОБЛЕМЫ: "Ошибка синтаксиса в запросе на объединение"

Я понимаю, что решил проблему, но все-таки как можно построить запрос на основе объединения двух запросов из другой базы?
Саныч! Возможно я не понял чего-то, но как мне сформулировать вопрос я уже иссяк!!! Вообщем есть 3 базы (независимые друг от друга). запросы в каждой из них на итого на складе абсолютно одинаковые 9базы тоже одинаковы). Но товар на складе одинаков, правда иногда имеются различия (поэтому использую UNION ALL). Нужно объединить данные со всех складов ( в запросе "Запрос итого по складу").
надеюсь я никого не запутал?
...
Рейтинг: 0 / 0
25.07.2004, 22:20:01
    #32620394
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Секунду. В самом начале нашлась ошибка со скобками. Ты ее исправил, но не сказал как. Вот я этого и ждал. В твоем последнем посте первый селект - это оно?

P.S. Не надо со мной на Вы...
...
Рейтинг: 0 / 0
25.07.2004, 22:37:08
    #32620401
Ukraina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Саныч! исправил как сказали, но тогда дало ошибку на объединение, т.е я можу предположить, что ошибка в скобках при синтаксисе объединения.

Изначально я применял следующее:
SELECT [q].Товар, [q].Наименование, [q].Категория, Sum([q].I) AS [Sum-I]
FROM [SELECT [2].[Товар], [2].[Наименование], [2].[Категория], [2].[Код], [2].[Итого] as [I] FROM 2 GROUP BY [2].[Товар], [2].[Наименование], [2].[Категория], [2].[Код], [2].[Итого]
UNION ALL Select [3].[Товар], [3].[Наименование],[3].[Категория],[3].[Код], [3].[Итого] as [I] FROM 3 GROUP BY [3].[Товар], [3].[Наименование], [3].[Категория], [3].[Код],[3].[Итого]]. AS q
GROUP BY [q].Товар, [q].Наименование, [q].Категория;

потом просто решил вместо "2" и "3" (это является запросом) вставить синтаксис описанный в запросе "2" и "3". и начались проблемы.
Я исправил квадратную скобку на "круглую" и ошибка стала другой, но уже синтаксис на объединение. Я грешу на синтакиси при использовании инструкции "IN"
В последнем селекте это "ОНО". См. Ниже в нем то и ошибка на объединение:

SELECT [q].Товар, [q].Наименование, [q].Категория, Sum([q].I) AS [Sum-I]
FROM [SELECT [q1].[Товар], [q1].[Наименование], [q1].[Категория], [q1].[Итого] as [I] FROM (SELECT [Запрос итого по складу].Товар, [Запрос итого по складу].Наименование, [Запрос итого по складу].Категория, [Запрос итого по складу].Итого FROM [Запрос итого по складу] IN 'C:\Program Files\GKVOfficeWork\MY\Serpay\01\Serpay_Base.mdb' as q1 GROUP BY [q1].[Товар], [q1].[Наименование], [q1].[Категория], [q1].[Итого])
UNION ALL Select [q2].[Товар], [q2].[Наименование],[q2].[Категория], [q2].[Итого] as [I] FROM (SELECT [Запрос итого по складу].Товар, [Запрос итого по складу].Наименование, [Запрос итого по складу].Категория, [Запрос итого по складу].Итого FROM [Запрос итого по складу] IN 'C:\Program Files\GKVOfficeWork\MY\Serpay\01\Serpay_Electra.mdb' as q2 GROUP BY [q2].[Товар], [q2].[Наименование], [q2].[Категория],[q2].[Итого]]. AS q
GROUP BY [q].Товар, [q].Наименование, [q].Категория;
...
Рейтинг: 0 / 0
25.07.2004, 22:40:10
    #32620403
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Ukrainaисправил как сказали
Тут нигде не было сказано, как исправлять.

ОК. Буду думать.
...
Рейтинг: 0 / 0
25.07.2004, 22:46:36
    #32620404
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Вижу пропущенную закрывающую круглую скобку перед " ]. ". То есть самый конец должен быть такой:

[q2].[Категория],[q2].[Итого] ) ]. AS q
GROUP BY [q].Товар, [q].Наименование, [q].Категория;
...
Рейтинг: 0 / 0
25.07.2004, 22:50:26
    #32620406
Ukraina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Исправил исконный ляпис, т.е. круглую скобку на квадратную из самого первого топика

Итого FROM ([Запрос итого по складу] IN 'C:\Base.mdb') as q1 GROUP BY [q1].[Товар], [q1].[Наименование], [q1].[Категория], [q1].[Итого])

Красное убрано (или исправлено)

Одним словом: где-то я не поставил скобки или добавил лишнии (это мое предположение
...
Рейтинг: 0 / 0
25.07.2004, 22:52:37
    #32620407
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Мой ответ от 22:46 видел?
...
Рейтинг: 0 / 0
25.07.2004, 22:58:48
    #32620409
Ukraina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
насколько мне можно отключиться из Интендата, я просто попробую? Если через 30 мин? Можу я?
...
Рейтинг: 0 / 0
25.07.2004, 22:58:48
    #32620410
(c)VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Тебе зарплату платят в зависимости от к-ва символов в запросе?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT [q].Товар, [q].Наименование, [q].Категория, Sum([q].I) AS [Sum-I]
FROM 
(SELECT [Запрос итого по складу].Товар, [Запрос итого по складу].Наименование, [Запрос итого по складу].Категория, 
[Запрос итого по складу].Итого as I 
FROM [Запрос итого по складу] IN 'C:\Program Files\GKVOfficeWork\MY\Serpay\01\Serpay_Base.mdb' 
UNION ALL 
SELECT [Запрос итого по складу].Товар, [Запрос итого по складу].Наименование, [Запрос итого по складу].Категория, 
[Запрос итого по складу].Итого 
FROM [Запрос итого по складу] IN 'C:\Program Files\GKVOfficeWork\MY\Serpay\01\Serpay_Electra.mdb') as q
Group by    [q].Товар, [q].Наименование, [q].Категория
Тоже , но вид сбоку.
З.Ы При необходимости Саныч расставит квадратные скобки :)
...
Рейтинг: 0 / 0
25.07.2004, 23:04:37
    #32620413
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
:^) VIG, не отнекивайся, гуру у нас ты, а не я.
...
Рейтинг: 0 / 0
25.07.2004, 23:26:19
    #32620419
Ukraina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Возможно я чего-то в жизни не понимаю, но попытаюсь объяснить на рабочем примере:
Изначально использовал 2 запроса, которые скачивают значения из запроса других баз данных ( привожу примеры):

Запрос «2»

SELECT [Запрос итого по складу].Товар, [Запрос итого по складу].Наименование, [Запрос итого по складу].Категория, [Запрос итого по складу].Код, [Запрос итого по складу].Итого
FROM [Запрос итого по складу] IN 'F:\GKVSoft\Serpay\02\Serpay_Electra.mdb';

И Запрос «3»

SELECT [Запрос итого по складу].Товар, [Запрос итого по складу].Наименование, [Запрос итого по складу].Категория, [Запрос итого по складу].Код, [Запрос итого по складу].Итого
FROM [Запрос итого по складу] IN 'F:\GKVSoft\Serpay\02\Serpay_Base.mdb';

Для «склеивания» значений этих запросов использую другой запрос «777»:

SELECT [q].Товар, [q].Наименование, [q].Категория, Sum([q].I) AS [Sum-I]
FROM [SELECT [2].[Товар], [2].[Наименование], [2].[Категория], [2].[Код], [2].[Итого] as [II] FROM 2 GROUP BY [2].[Товар], [2].[Наименование], [2].[Категория], [2].[Код], [2].[Итого]
UNION ALL Select [3].[Товар], [3].[Наименование],[3].[Категория],[3].[Код], [3].[Итого] as [II] FROM 3 GROUP BY [3].[Товар], [3].[Наименование], [3].[Категория], [3].[Код],[3].[Итого]]. AS q
GROUP BY [q].Товар, [q].Наименование, [q].Категория;

В итоге все работает, но хотелось бы использовать только один запрос ( в данном случае «777»), где совмещены запросы «2» и «3». Вот я и пытаюсь вставить запросы «2» и «3» в запрос «777» (Представляете какое имя носит экспериментальный запрос – «666»)

К VIGу
Запрос аналогичный. Только вот почему-то дает ошибки, то нарушение синтаксиса “From”, то нарушение инструкции “UNION”. Может быть это невозможно всё-таки? И я задал нереальную задачу?
...
Рейтинг: 0 / 0
25.07.2004, 23:30:20
    #32620420
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Где ошибка в запросе SQL?
Владимир СанычМой ответ от 22:46 видел?
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Где ошибка в запросе SQL? / 21 сообщений из 21, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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