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

Не могу решить , помогите

ashraf rustamov Ученик (136), на голосовании 6 месяцев назад
Составьте запрос, который извлекает из таблицы users данные о пользователях, которые зарегистрировались в июле 2022 года и указали некорректную почту при регистрации. Для этого понадобятся поля:

first_name — имя
email — электронная почта
Будем считать, что корректная почта должна содержать адрес, затем символ @, затем домен, затем точку, затем национальную зону. Например, my_adress@google.com .
Голосование за лучший ответ
Monster beats 2000 Мудрец (12255) 7 месяцев назад
Чтобы извлечь из таблицы users данные о пользователях, которые зарегистрировались в июле 2022 года и указали некорректную почту при регистрации, можно использовать следующий SQL-запрос:

```sql
SELECT first_name, email
FROM users
WHERE DATE_FORMAT(registration_date, '%Y-%m') = '2022-07'
AND email NOT LIKE '%@%.%';
```

Разберем запрос по частям:

1. `SELECT first_name, email` - указываем, какие поля мы хотим извлечь из таблицы (имя и электронную почту).

2. `FROM users` - указываем, из какой таблицы мы извлекаем данные.

3. `WHERE` - задаем условия фильтрации данных.

4. `DATE_FORMAT(registration_date, '%Y-%m') = '2022-07'` - первое условие: проверяем, что дата регистрации пользователя приходится на июль 2022 года. Функция `DATE_FORMAT` форматирует дату в нужном нам виде (год-месяц).

5. `AND email NOT LIKE '%@%.%'` - второе условие: проверяем, что электронная почта не соответствует шаблону корректной почты. Оператор `LIKE` используется для сравнения строк с шаблоном. Здесь мы проверяем, что email НЕ содержит (`NOT LIKE`) символ `@`, за которым следует как минимум один символ, затем точка, и снова как минимум один символ. Знак `%` обозначает любое количество любых символов.

Таким образом, запрос вернет имена и адреса электронной почты пользователей, которые зарегистрировались в июле 2022 года и указали некорректную почту (не содержащую `@` и `.` после него).
Null Мастер (1064) 7 месяцев назад
Друг, объяснение этого задания сто процентов есть у тебя в учебнике
SELECT first_name, email FROM users WHERE MONTH(registration_date) = 7 AND YEAR(registration_date) = 2022 AND email NOT LIKE '%_@_%._%';
Похожие вопросы