Гость
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Помогите новичку составить запрос / 10 сообщений из 10, страница 1 из 1
19.07.2018, 08:56
    #39676012
Alexyas
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку составить запрос
Всем денечек добрый.
Изучаю SQL онлайн на одном из сайтов.
Попалось следующее задание:

Equatorial Guinea and Dominican Republic have all of the vowels (a e i o u) in the name. They don't count because they have more than one word in the name.

Find the country that has all the vowels and no spaces in its name.

You can use the phrase name NOT LIKE '%a%' to exclude characters from your results.

Нужно запросом отобрать страны, которые содержат в себе гласные (a e i o u) и страны, в названии которых нет пробелов.
Как это сделать операторами like и not like ? Или нужно использовать другой оператор?

Состряпал такой запрос, но он не работает

SELECT name
FROM world
WHERE name '%a%,%e%,%i%,%o%,%u%'
AND name NOT LIKE '%%_%%'

Где я неправ?

Заранее благодарен за помощь
...
Рейтинг: 0 / 0
20.07.2018, 03:18
    #39676567
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку составить запрос
А при чем здесь SQLite?
Но если уверен что у тебя именно он, то читай тут: https://www.sqlite.org/lang_expr.html
...
Рейтинг: 0 / 0
20.07.2018, 03:56
    #39676568
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку составить запрос
AlexyasГде я неправ?
Здесь
Alexyasname '%a%,%e%,%i%,%o%,%u%'
...
Рейтинг: 0 / 0
20.07.2018, 04:27
    #39676569
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку составить запрос
Да и вместо '%%_%%' явно нужно '% %'
...
Рейтинг: 0 / 0
20.07.2018, 04:39
    #39676570
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку составить запрос
Без привычного мне INLIST это выглядит так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT name
FROM world
WHERE (name LIKE '%a%'
  or name LIKE '%e%'
  or name LIKE '%i%'
  or name LIKE '%o%'
  or name LIKE '%u%')
and name NOT LIKE '% %'



А как INLIST переводится в твоём диалекте - не знаю.
...
Рейтинг: 0 / 0
20.07.2018, 05:52
    #39676574
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку составить запрос
Вру. Точнее у тебя одно слово пропущено.
AlexyasНужно запросом отобрать страны, которые содержат в себе ВСЕ гласные (a e i o u) и страны, в названии которых нет пробелов.


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT name
FROM world
WHERE name LIKE '%a%'
     and name LIKE '%e%'
     and name LIKE '%i%'
     and name LIKE '%o%'
     and name LIKE '%u%'
     and name NOT LIKE '% %'
...
Рейтинг: 0 / 0
20.07.2018, 08:25
    #39676594
Дед-Папыхтет
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку составить запрос
Alexyas,

В mssql
Код: sql
1.
2.
3.
4.
SELECT name
FROM world
--WHERE name '%a%,%e%,%i%,%o%,%u%' AND name NOT LIKE '%%_%%'
where name like '%[aeiou]%' and name not like '% %'
...
Рейтинг: 0 / 0
20.07.2018, 08:26
    #39676595
Дед-Папыхтет
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку составить запрос
Дед-ПапыхтетAlexyas,

В mssql
Код: sql
1.
2.
3.
4.
SELECT name
FROM world
--WHERE name '%a%,%e%,%i%,%o%,%u%' AND name NOT LIKE '%%_%%'
where name like '%[aeiou]%' and name not like '% %'


или же так может чуть короче но понимать наверное чуть труднее
Код: sql
1.
where name not like '%[^aeiou]%'
...
Рейтинг: 0 / 0
20.07.2018, 08:28
    #39676596
Дед-Папыхтет
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку составить запрос
Дед-ПапыхтетДед-ПапыхтетAlexyas,

В mssql
Код: sql
1.
2.
3.
4.
SELECT name
FROM world
--WHERE name '%a%,%e%,%i%,%o%,%u%' AND name NOT LIKE '%%_%%'
where name like '%[aeiou]%' and name not like '% %'


или же так может чуть короче но понимать наверное чуть труднее
Код: sql
1.
where name not like '%[^aeiou]%'


сори... не то в последнем посте - это только из aeiou, если есть другие символы хоть пробелы хоть не пробелы - выбрасывает из резалтсета фильтром... просто вспомнил задачку - как вывести только те строки где одни цифры... подобный шаблон был not like '%[^0-9]%'
...
Рейтинг: 0 / 0
20.07.2018, 08:32
    #39676599
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку составить запрос
Дед-Папыхтет where name like '%[aeiou]%'
Выдаст все названия, если есть одна любая гласная.
А ему нужны названия, в которых есть ВСЕ гласные.
...
Рейтинг: 0 / 0
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Помогите новичку составить запрос / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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