|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
28.12.2009, 22:39 | #1 |
Регистрация: 29.11.2009
Сообщений: 7
|
Запрос на основе запросов
Добрый вечер! Подскажите, пожалуйста, есть ли возможность создания запроса, в основе которого лежат два запроса.
Выдает для одного из запросов: ODBC - ошибка вызова |
28.12.2009, 23:21 | #2 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте Aksa.
Запрос (Представление) может обращаться к нескольким источникам данных, это могут быть и таблицы и запросы, ограничений нет. Сообщение ".. ошибка вызова" скорее всего результат обращения к внешнему объекту связь с которым нарушена, ответить точнее можно только после анализа конструкции. Евгений. |
28.12.2009, 23:31 | #3 |
Регистрация: 29.11.2009
Сообщений: 7
|
Зарплата:
SELECT a.id_работника, a.Фамилия, a.Имя, a.Отчество, a.Должность, a.Отдел, c.Месяц, c.Количество_часов*b.Ставка AS Зарплата, (c.Количество_часов*b.Ставка-(c.Количество_часов*b.Ставка*0.13)) AS [С вычетом НДФЛ] FROM dbo_Employee AS a, dbo_Tariff AS b, dbo_Timesheet AS c WHERE c.id_работника=a.id_работника And a.Должность=b.Должность And a.разряд=b.разряд And c.Месяц=[Введите месяц]; Работники в норме: SELECT a.ID_работника, a.Фамилия, a.Имя, a.Отчество, a.Должность, a.Отдел FROM dbo_Employee AS a, dbo_Timesheet AS b WHERE a.ID_работника=b.ID_работника And b.Количество_часов=21*8 And b.Месяц=[Введите месяц]; Выплаты: SELECT b.id_работника, b.Фамилия, b.Имя, b.Отчество, b.Должность, b.Отдел, a.Месяц, a.[С вычетом НДФЛ]+1500 AS Выплата FROM Зарплата AS a, [Работники в норме] AS b WHERE a.id_работника=b.id_работника; |
28.12.2009, 23:47 | #4 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Aksa, Вы будете комментировать самостоятельно, или можно начинать угадывать зачем Вы выложили на пост #3 текст SQL конструкций и какому "источнику" они принадлежат.
Евгений. |
29.12.2009, 00:16 | #5 |
Регистрация: 29.11.2009
Сообщений: 7
|
Все таблицы хранятся на sql server. Запросы считаются нормально, а запрос, на них основанный не работает.
|
29.12.2009, 00:51 | #6 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Я думаю прежде всего стоит избавиться от подобных Псевдонимов :
...AS [С вычетом НДФЛ]... и понять, что значит : ...b.Месяц=[Введите месяц] - это случайно не ввод параметров? Евгений. Последний раз редактировалось Teslenko_EA; 29.12.2009 в 00:53. |
29.12.2009, 01:10 | #7 |
Регистрация: 29.11.2009
Сообщений: 7
|
Псевдоним заменила, все равно то же самое.
Месяц - это параметр, да. Проблема возникает с Зарплатой. для нее ошибка вызова По сути проблем не должно быть. |
30.12.2009, 20:53 | #8 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте Aksa.
Вы работаете с MDB файлом, а если бы с ADP он бы сразу "показал" ошибку. Не знаю какой у Вас сервер но до версии MS SQL 2000 точно нельзя создавать Представление из Хранимых процедур, а именно таковой является запрос с параметрами. Возможно у Вас другая версия SQL сервера и я не прав. Удачи Вам. С Новым Годом. Евгений. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Объединение 2-х запросов | SlavaSH | БД в Delphi | 6 | 28.12.2009 10:08 |
12 SQL-запросов | Best Programmist | Microsoft Office Access | 7 | 12.12.2009 20:46 |
запрос ссылается на несвязанный с ним запрос | kolebatel | SQL, базы данных | 0 | 11.06.2008 12:50 |
Запрос на сложение запросов | ГОСЕАН | БД в Delphi | 3 | 19.05.2008 11:31 |
SQL запрос на основе другого SQL запрса... | Timoxa | БД в Delphi | 1 | 07.01.2007 18:15 |