powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / foxpro alias is not found
9 сообщений из 9, страница 1 из 1
foxpro alias is not found
    #38534744
TEXHIK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SELECT car_list.name_drv, car_list.date_drv, car_type.type_name FROM car_list;
LEFT JOIN car_move ON car_move.code_car=car_list.code_car;
WHERE car_list.type_car IN (SELECT car_type.type_car FROM car_type WHERE car_type.type_sym='п' OR car_type.type_sym='м');
AND car_move.address LIKE ("%вокзал%") AND DOW(car_move.date_take) IN (2, 3);
GROUP BY car_list.name_drv, car_list.date_drv, car_type.type_name
ошибка: foxpro alias "Car_type" is not found

нужно штоб ето работало именно з подзапросом, ето условия лабораторной. Я не могу понять в чем дело
...
Рейтинг: 0 / 0
foxpro alias is not found
    #38534798
Ffffffffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ошибка означает: алиас Car_type не найден. Ищите таблицу.
...
Рейтинг: 0 / 0
foxpro alias is not found
    #38534802
TEXHIK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ffffffffffffff,

ета таблица точно там есть
...
Рейтинг: 0 / 0
foxpro alias is not found
    #38534807
alextashk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TEXHIK,

попробуйте вставить перед запросом

wait window SELECT("Car_type")

и расскажите нам что произошло
...
Рейтинг: 0 / 0
foxpro alias is not found
    #38534812
TEXHIK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alextashk, вверху екрана справа показалось число 1
...
Рейтинг: 0 / 0
foxpro alias is not found
    #38534814
TEXHIK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SELECT car_list.name_drv, car_list.date_drv, car_type.type_name FROM car_list;
LEFT JOIN car_move ON car_move.code_car=car_list.code_car;
WHERE car_list.type_car IN (SELECT car_type.type_car FROM car_type WHERE car_type.type_sym='п' OR car_type.type_sym='м');
AND car_move.address LIKE ("%вокзал%") AND DOW(car_move.date_take) IN (2, 3);
GROUP BY car_list.name_drv, car_list.date_drv
когда пишу так, тоесть без последней групировки без car_type.type_name то работает, ну по крайней мере ошибок не выдает
...
Рейтинг: 0 / 0
foxpro alias is not found
    #38534906
Reese
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Предполагаю что должно быть что-то вроде:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT car_list.name_drv, car_list.date_drv, car_type_a.type_name ;
  FROM car_list;
  LEFT JOIN car_move ON car_move.code_car=car_list.code_car;
  INNER JOIN (SELECT car_type.type_car ;
                FROM car_type ;
                WHERE car_type.type_sym='п' OR car_type.type_sym='м') AS car_type_a ON car_list.type_car=car_type_a.type_car;
  WHERE car_move.address LIKE ("%вокзал%") ;
    AND DOW(car_move.date_take) IN (2, 3);
  GROUP BY car_list.name_drv, car_list.date_drv, car_type_a.type_name



Вы пытаетесь выбрать поле из таблицы car_type, но при этом не включив эту таблицу в запрос.
...
Рейтинг: 0 / 0
foxpro alias is not found
    #38534916
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ваш запрос в "читабельном" виде

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
SELECT ;
	car_list.name_drv, ;
	car_list.date_drv, ;
	car_type.type_name ;
FROM car_list ;
LEFT JOIN car_move ON car_move.code_car=car_list.code_car ;
WHERE car_list.type_car IN (SELECT car_type.type_car ;
				FROM car_type ;
				WHERE car_type.type_sym='п' ;
					OR car_type.type_sym='м') ;
	AND car_move.address LIKE ("%вокзал%") ;
	AND DOW(car_move.date_take) IN (2, 3) ;
GROUP BY ;
	car_list.name_drv, ;
	car_list.date_drv, ;
	car_type.type_name


Так вот, можете, хотя бы сами себе, ответить на вопрос, откуда в результате выборки возьмутся значения таблицы car_type?

select ЧТО
from ОТКУДА
where КАКИЕ

Ваш запрос указывает ЧТО взять, но не содержит информации ОТКУДА взять в отношении таблицы car_type. Вот Вы и получаете сообщение об ошибке, что источник данных не указан.

Если обязательно нужен подзапрос по таблице car_type, то ее придется указывать дважды. И в подзапросе и как источник данных выборки

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
SELECT ;
	car_list.name_drv, ;
	car_list.date_drv, ;
	car_type.type_name ;
FROM car_list ;
INNER JOIN car_move ON car_move.code_car=car_list.code_car ;
INNER JOIN car_type ON car_list.type_car=car_type.type_car ;
WHERE car_list.type_car IN (SELECT type2.type_car ;
				FROM car_type type2 ;
				WHERE type2.type_sym in ('п','м')) ;
	AND car_move.address LIKE ("%вокзал%") ;
	AND DOW(car_move.date_take) IN (2, 3) ;
GROUP BY ;
	car_list.name_drv, ;
	car_list.date_drv, ;
	car_type.type_name
...
Рейтинг: 0 / 0
foxpro alias is not found
    #38535070
TEXHIK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое всем спасибо
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / foxpro alias is not found
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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