Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите с решением SQL ?

Игорь Бунтовских Ученик (62), на голосовании 2 недели назад
Создайте представление v_omsk_client на основе таблицы client_address с полями: CLIENT_ID, CITY. В представлении нужно учесть следующее условие: клиенты должны быть из Омской области (region), а округ (district) должен быть отличным от null.

CREATE VIEW v_omsk_client (CLIENT_ID, CITY)
AS select CLIENT_ID, CITY from client_address
where region in ('Омская') and district is not NULL;
В чем ошибка?
Голосование за лучший ответ
Malenkiuprinter Kpachemokoc Знаток (376) 1 месяц назад
Ошибки в вашем SQL-запросе нет, но есть некоторые моменты, которые стоит уточнить или изменить.

Условие region in ('Омская') - здесь вы фильтруете только те строки, где значение столбца region равно 'Омская'. Если вам нужно учитывать любые значения, содержащие "Омская", включая "Омская область", "Омская губерния" и т.д., то следует использовать условие region LIKE '%Омская%'.

Если вы хотите, чтобы в представлении были только уникальные комбинации CLIENT_ID и CITY, то стоит использовать оператор DISTINCT:

 CREATE VIEW v_omsk_client (CLIENT_ID, CITY)  
AS SELECT DISTINCT CLIENT_ID, CITY
FROM client_address
WHERE region LIKE '%Омская%' AND district IS NOT NULL;
бедитесь, что структура таблицы client_address содержит столбцы CLIENT_ID, CITY, region и district, и они имеют корректные типы данных.

Проверьте, действительно ли у вас есть данные, удовлетворяющие вашему условию, чтобы убедиться, что представление работает правильно.
Похожие вопросы