SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 02.01.2020 22:32:24

antongerva
Участник
Зарегистрирован: 02.01.2020
Сообщений: 4

Помогите решить задачу

Здравствуйте, уважаемые форумчане!

Недавно начал изучать mysql и столкнулся с задачей, которую могу решить по-своему. В программе же предлагается единственный правильный вариант со своими блоками для ввода решения задачи.

Помогите, пожалуйста.. Не могу самостоятельно разобраться.

Скриншот условия задачи и предлагаемых блоков прилагаются

Заранее благодарю!


Прикрепленные файлы:
Attachment Icon Задача 3.3.gif, Размер: 25,990 байт, Скачано: 262

Неактивен

 

#2 03.01.2020 06:36:45

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2422

Re: Помогите решить задачу

SELECT SUM(value) FROM
Вот тут не знаю либо receiver либо receivers либо expenses
WHERE name like %гипермаркет%


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

#3 03.01.2020 11:39:29

antongerva
Участник
Зарегистрирован: 02.01.2020
Сообщений: 4

Re: Помогите решить задачу

Спасибо за оперативный ответ!
Все три варианта выдаёт неверными. Пробовал всё, что только можно. Я уже подумываю, что в условии или блоках решения ошибка...

Подскажите, Вас не смущает отсутствие верхних ковычек, ограничивающих блок %гипермаркет%? Я имею ввиду, что должно быть '%гипермаркет%'...

Заранее благодарю за ответ!

Неактивен

 

#4 03.01.2020 12:22:03

antongerva
Участник
Зарегистрирован: 02.01.2020
Сообщений: 4

Re: Помогите решить задачу

При этом существует, по всей видимости, две таблицы. Первая называется expenses, у которой названия столбцов следующие - num, value, receiver. Вторая называется receivers, у которой названия столбцов следующие - num, name. В первой таблице поле receiver имеет тип INT, значение которого соответствует полю num таблицы receivers.

Простите, что сразу не указал этого. Это лишь моё предложение. Но, судя по всему, так и есть.

Отредактированно antongerva (03.01.2020 12:50:56)

Неактивен

 

#5 04.01.2020 12:17:11

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2422

Re: Помогите решить задачу

Значит таблица expenses, мы же sum по полю value считаем (других вариантов, исходя из картинки - нету).

>Я имею ввиду, что должно быть '%гипермаркет%'

Вы совершенно правы, кавычек действительно не достаёт.
Только их ведь и на картинке нету.


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

#6 06.01.2020 23:00:27

antongerva
Участник
Зарегистрирован: 02.01.2020
Сообщений: 4

Re: Помогите решить задачу

Спасибо, deadka, за комментарий. В этом задании куча нюансов. Признаюсь долго мучался, но разобрался сам:

select sum(value) from expenses where receiver in (select num from receivers where name like '%гипермаркет%');

Также обращаю внимание на отсутствие одиночных ковычек в задании. В моём решении они есть.

Всем добра!

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson