Создание таблицы по макету с выборкой - MySQL
Формулировка задачи:
Есть таблица phones. Нужно создать таблицу otherPhones с такими же полями, но перенести надо не все данные, а за условиями:
- фамилии начинаются на "ко"
- в телефонах есть число 77
- сума цифр номера телефона делится на 13
Структуру таблицы прикрепил в виде скриншота.
Так как у меня нет поля Фамилия, а есть только Abonent(тоесть ПИБ), выбрать оттуда фамилию могу таким образом:
Одно условие есть. Чтобы проверить есть ли в телефоне 77:
Третье возможно так, но это неуниверсально и очень длинно както:
Но как его скинуть все в один запрос с собданием таблицы и перемещением по условием, я не знаю. Помогите пожалуйста
Листинг программы
- WHERE SUBSTRING(Abonent, 1, INSTR(Abonent, ' ')-1) LIKE 'КО%'
Листинг программы
- WHERE Phone LIKE '%77%'
Листинг программы
- WHERE (
- CAST(SUBSTRING(Phone,1,1))+
- CAST(SUBSTRING(Phone,2,1))+
- CAST(SUBSTRING(Phone,3,1))+
- CAST(SUBSTRING(Phone,4,1))+
- CAST(SUBSTRING(Phone,5,1))+
- CAST(SUBSTRING(Phone,6,1)) ) / 13 = 0
Решение задачи: «Создание таблицы по макету с выборкой»
textual
Листинг программы
- CREATE TABLE otherPhones (SELECT * FROM phones WHERE (SUBSTRING(Abonent, 1, INSTR(Abonent, ' ')-1) LIKE 'КО%')
- AND (Phone LIKE '%77%') AND ((
- CAST(SUBSTRING(Phone,1,1))+
- CAST(SUBSTRING(Phone,2,1))+
- CAST(SUBSTRING(Phone,3,1))+
- CAST(SUBSTRING(Phone,4,1))+
- CAST(SUBSTRING(Phone,5,1))+
- CAST(SUBSTRING(Phone,6,1)) ) / 13 = 0));
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д