Я буду держать это кратко здесь для удобства.Я новичок в кодировании SQL, поэтому, пожалуйста, извините, если я скажу что-то странное.Мне не удалось найти надежного решения (по крайней мере, одного, которое я бы по-настоящему понял), именно поэтому я публикую здесь последнее средство на данный момент.
Код таблицы:
create table companies (
company_id mediumint not null auto_increment,
Name varchar(40) not null,
Address varchar(40),
FoundingDate date,
primary key (company_id)
);
create table employees (
Employee_id mediumint not null auto_increment,
Name varchar (40),
Surname varchar(40),
primary key (Employee_id)
);
create table accounts (
Account_id mediumint not null auto_increment,
Account_number varchar(10) not null,
CompanyID int(10),
Date_of_creation date,
NET_value int(30),
VAT int(3),
Total_value int(40),
EmployeeID int(10) not null,
Description varchar(40),
primary key (Account_number)
);
Табличные значения являются случайными строками и числами, пока я не выясню это.
Моя проблема заключается в том, что я застрял при формировании правильных запросов SQL, а именно:
- Запросите все учетные записи в назначенных ими компаниях.Мне нужно, чтобы оно показывало значение NULL, если у аккаунта нет ассоциированной компании.
- Запрос, в котором можно перечислить все аккаунты, чья дата меньше 2018-03-16 или те, у которых нет даты.
- Запрос, который напечатает описание таблицы «Счета» в одном столбце и количество символов в этом описании в другом столбце.
- Запрос, в котором перечислены все сотрудники, имена которых заканчиваются на ' -gh ', имена которых имеют длину более 5 символов.
- Запрос, в котором будет отображена сумма наивысшей общей суммы.
- Запрос, в котором будут перечислены все учетные записи, имеющие' 02 'в них (т. Е. 3 / 02 / 05).
Если вы можете ответить хотя бы на один из этих запросов и можете ли вы объяснить, как вы добрались дорешение в упрощенном виде, ну ... боюсь, мне нечего предложить, кроме честной благодарности!^^