Пікірлер
@user-ii1el1xd4j
@user-ii1el1xd4j 16 күн бұрын
О_О страшно благодарчка за эти видео
@nikitanikitin5934
@nikitanikitin5934 18 күн бұрын
Подскажите, пожалуйста, будет ли верным использование запроса SELECT COUNT(plane) AS 'Количество' FROM Trip WHERE plane = 'TU-134' GROUP by Количество;
@user-tg9wn7er1y
@user-tg9wn7er1y 24 күн бұрын
WITH AAAA AS( SELECT company, COUNT(company) 'aaa' FROM Trip GROUP BY company ORDER BY aaa ASC LIMIT 3 ) DELETE Company FROM Company WHERE id IN ( SELECT company FROM AAAA )
@f1n1st13
@f1n1st13 27 күн бұрын
INSERT INTO Goods ( SELECT COUNT(*) + 1, 'Cheese', ( SELECT good_type_id FROM GoodTypes WHERE good_type_name = 'food' limit 1 ) FROM Goods ) Решение в премиуме, вообще не понимаю как работает, куда делись values? и почему нет имен колонок? Может кто то объяснить?
@kiss.to4ka.163
@kiss.to4ka.163 Ай бұрын
Так сохранится только 1окно или все?
@kiss.to4ka.163
@kiss.to4ka.163 Ай бұрын
Одно окно😢
@Sannikov.a.a
@Sannikov.a.a Ай бұрын
Будет сохранён проект , который открыт в текущем окне
@kadetchualihanov
@kadetchualihanov Ай бұрын
Артём, добрый день! Тоже интересует этот вопрос, почему задача решается только с помощью алиаса? В чем проблема?
@Sannikov.a.a
@Sannikov.a.a Ай бұрын
При попытке выполнить запрос без псевдонима, СУБД пытается интерпретировать goods в подзапросе как таблицу в текущем контексте, то есть как целевую таблицу вставки. Псевдоним “as t” решает эту проблему, потому что он создает временное наименование для таблицы goods в контексте подзапроса. И теперь СУБД понимает, что t - это не таблица в текущем контексте, а временное имя для таблицы goods в подзапросе.
@lenabarlow
@lenabarlow Ай бұрын
Странно, у меня в условиях ещё сказано использовать NOW()
@user-ot3ts7lj6f
@user-ot3ts7lj6f 8 күн бұрын
у меня тоже
@musslim_808
@musslim_808 Ай бұрын
половина видео интро класс
@Shogun_Sun
@Shogun_Sun Ай бұрын
Спасибо!
@poidem_domoi
@poidem_domoi Ай бұрын
что делать если не сохранял бекап?
@Sannikov.a.a
@Sannikov.a.a Ай бұрын
С такой ситуацией не сталкивался, поэтому подсказать не могу
@boristaranda
@boristaranda Ай бұрын
select FLOOR(avg(FLOOR(DATEDIFF(NOW(), birthday) / 365))) as age from FamilyMembers Не благодарите, нашел на GITHUB
@mishaprokopovich5253
@mishaprokopovich5253 Ай бұрын
Без join-ов можно так: SELECT name FROM Passenger p WHERE p.id IN ( SELECT pit.passenger FROM Pass_in_trip pit WHERE pit.trip IN ( SELECT t.id FROM Trip t WHERE t.plane = 'TU-134' AND t.town_to = 'Moscow' ) ) GROUP BY name; но вряд ли это производительней join-ов
@user-kk7xt3uo7x
@user-kk7xt3uo7x Ай бұрын
Мое решение такое (возможно отсутствует красота синтаксиса, но я только учусь): SELECT we.teacher FROM ( SELECT sc.teacher AS teacher, c.name FROM Schedule AS sc INNER JOIN Class AS c ON (sc.class = c.id) AND (c.name LIKE '11%') GROUP BY sc.teacher, sc.class ) AS we GROUP BY we.teacher HAVING COUNT(we.teacher) = (SELECT COUNT(*) FROM Class WHERE name LIKE '11%') ORDER BY we.teacher
@awesomegirl8410
@awesomegirl8410 Ай бұрын
Артем, но задание 35 немного другое. Нужно посчитать РАЗЛИЧНЫЕ кабинеты. Если бы кабинет в этот день использовался несколько раз, то результат был бы другим.
@BonShot-jv6zm
@BonShot-jv6zm Ай бұрын
Артём, здравствуйте! Голову сломал уже, объясните , пожалуйста! Почему если не задать алиас таблице "Goods t" , то задача не решается. Я не понимаю( В других решениях аналогичная ситуация
@Sannikov.a.a
@Sannikov.a.a Ай бұрын
При попытке выполнить запрос без псевдонима, СУБД пытается интерпретировать goods в подзапросе как таблицу в текущем контексте, то есть как целевую таблицу вставки. Псевдоним “as t” решает эту проблему, потому что он создает временное наименование для таблицы goods в контексте подзапроса. И теперь СУБД понимает, что t - это не таблица в текущем контексте, а временное имя для таблицы goods в подзапросе.
@mishaprokopovich5253
@mishaprokopovich5253 Ай бұрын
я такое выдал SELECT good_name from Goods g LEFT JOIN (SELECT DISTINCT good FROM Payments WHERE YEAR(date)='2005' ) subquery ON g.good_id=subquery.good WHERE subquery.good is null
@khikikomori
@khikikomori 2 ай бұрын
Спасибо за твой труд! Вопрос: почему идентификатор комнаты находишь так сложно? Если id есть в Reservation - значит комнату хотя бы 1 раз резервировали. SELECT DISTINCT room_id FROM Reservation разве не достаточно? :)
@user-swqaj3427
@user-swqaj3427 2 ай бұрын
можно обойтись одним джоином между Reviews и Reservations, потому что в таблице Reservations и так только те комнаты, которые хоть раз арендовали
@ertastoleuov4262
@ertastoleuov4262 2 ай бұрын
а почему в команде селект указывается звездочка?
@Sannikov.a.a
@Sannikov.a.a 2 ай бұрын
Чтобы вывести все столбцы из таблицы, так как это нужно по условию задачи
@user-rx7jo1we2p
@user-rx7jo1we2p 2 ай бұрын
Не.работант
@user-rx7jo1we2p
@user-rx7jo1we2p 2 ай бұрын
Не работает
@user-rx7jo1we2p
@user-rx7jo1we2p 2 ай бұрын
Такая имба с этих видео научился sql и теперь работаю за границей
@akiiiro
@akiiiro 2 ай бұрын
Спасибо огромное
@desans3455
@desans3455 2 ай бұрын
Бляя чел. Ну 19 секунд пустой инфы)
@Sannikov.a.a
@Sannikov.a.a 2 ай бұрын
Читай доку, там будет быстрее)
@Jet-fm4om
@Jet-fm4om 2 ай бұрын
это если может быть несколько деликатесов с максимальной ценой. если мы уверен, что такой всего 1, то можно и как автор видео. SELECT g.good_name, p.unit_price FROM Payments p JOIN Goods g ON p.good = g.good_id JOIN GoodTypes gt ON gt.good_type_id = g.type WHERE p.unit_price = ( SELECT MAX(unit_price) FROM Payments p JOIN Goods g ON p.good = g.good_id JOIN GoodTypes gt ON gt.good_type_id = g.type WHERE gt.good_type_name = 'delicacies' );
@user-rc9ht6hr8d
@user-rc9ht6hr8d 2 ай бұрын
Спасибо!
@uikuw
@uikuw 2 ай бұрын
что делать, если когда я нажимаю анпротект, после всех верно введённых данных, ничего не происходит?.. просто не срабатывает кнопка, перепробовала несколько раз
@user-sr5oe8mh6e
@user-sr5oe8mh6e 3 ай бұрын
без SUM в 3-й строке работать не будет
@user-qk2wl4yf5y
@user-qk2wl4yf5y 3 ай бұрын
Объясните, пожалуйста, зачем нужно было соединять с таблицей Trip?
@mishaprokopovich5253
@mishaprokopovich5253 Ай бұрын
незачем, иногда грешат таким
@vazdrich
@vazdrich 3 ай бұрын
Почему не срабатывает добавление WHERE, где через селект ищем MAX(Pay.unit_price)?
@aleksaleks583
@aleksaleks583 3 ай бұрын
Забавно , но если посмотреть то товар "red caviar" продавался в 2006 году и у него есть ID платежки. Получается в описании задания неточность
@Foxxx_1331
@Foxxx_1331 3 ай бұрын
я так понимаю, при окне readonly нигде инфы нет. короче. после 30минутного дебилизма с прогой, вот как решить. закройте браузер. закройте это окно readonly... и ткните на unprotect. Заработает. из-за того, что браузер в фоне либо открыт unprotect не сработает
@blar_n_one8685
@blar_n_one8685 3 ай бұрын
SELECT good_name FROM Goods LEFT JOIN Payments ON Goods.good_id=Payments.good GROUP BY good_name HAVING SUM(YEAR(date)= '2005') IS NULL OR SUM (YEAR(date) = '2005')= 0
@alweon8862
@alweon8862 3 ай бұрын
У меня получилось не так изящно, но все же: Select member_name, SUM(Payments.amount*Payments.unit_price) as costs FROM FamilyMembers JOIN Payments on Payments.family_member = FamilyMembers.member_id WHERE YEAR(Payments.date) = '2005' AND Month(Payments.date) = '6' GROUP BY member_name
@ThisRussia
@ThisRussia 3 ай бұрын
SELECT FLOOR(AVG(YEAR(NOW())-YEAR(birthday)))-1 as age FROM FamilyMembers с каждым годом увеличиваем на 1 :)
@user-br5yr5hh2q
@user-br5yr5hh2q 4 ай бұрын
Power BI на виндовс 7 уже не устанавливается ?
@Sannikov.a.a
@Sannikov.a.a 4 ай бұрын
Думаю нет, надо смотреть по версии ПО
@sergey007lozhkin
@sergey007lozhkin 4 ай бұрын
а разве не нужно учесть условие (Having 3>0)? Ведь тут таких людей нет, которые ничего не потратили, а на практике это условие обязательно
@xDizeler
@xDizeler 4 ай бұрын
Добрый день, почему нельзя было сделать так : where p2.name = 'Steve Martin' t.town_to = 'London' , а писать в And ? получается where не поддерживает больше 1 условия?
@user-gj6or8pz8p
@user-gj6or8pz8p 4 ай бұрын
задача изменилась: теперь нельзя использовать функцию week, а по тексту появилось описание что такое неделя. предполагаю, что нужно использовать date_format, но что-то я не разобралась с вариациями формата, выдаёт ошибку
@Cesar1k
@Cesar1k 3 ай бұрын
работает функция week, причем принимает ответ без указания года.
@user-nd9do2nk2j
@user-nd9do2nk2j 4 ай бұрын
c if решение такое: select name, if(id in(select owner_id from rooms), 1, 0) is_owner, if(id in(select user_id from reservations), 1, 0) is_tenant from users
@Sanya_Uvelir
@Sanya_Uvelir 4 ай бұрын
SELECT member_name, status , sum(amount*unit_price) as costs from Payments p JOIN FamilyMembers f ON p.family_member=f.member_id where YEAR(date)=2005 GROUP by p.family_member не знаю почему но тоже прошло правильно
@user-nd9do2nk2j
@user-nd9do2nk2j 4 ай бұрын
Спасибо за материал! Очень помогло. Находил ответы так же в текстовом варианте, но с видео удобнее проверять себя.
@user-nd9do2nk2j
@user-nd9do2nk2j 4 ай бұрын
либо вот так вот: select if(price <= 100, 'economy', if(price < 200, 'comfort', 'premium')) category, count(*) count from rooms group by category
@user-nd9do2nk2j
@user-nd9do2nk2j 4 ай бұрын
еще можно с помощью разделителя решить. вот так: select substring_index(email, '@', -1) as domain , count(*) as count from users group by domain order by count desc, domain
@user-nd9do2nk2j
@user-nd9do2nk2j 4 ай бұрын
спасибо!
@ksu_valery
@ksu_valery 4 ай бұрын
Это некорректный запрос, т.к. не учитываете месяц рождения ... у вас получится, что человеку, рожденному 31.12.2000, 1 января 2024 уже исполнилось 24 года, хотя до ДР жить ещё целый год ))) ... у меня 47 получается, а нужно подогнать под тренажер )) измучилась, вот сюда привели поиски решения ))
@user-ug2sj4bg2o
@user-ug2sj4bg2o 4 ай бұрын
А почему тут не работает такой запрос? select name from Company where id in ( SELECT id from Trip where plane="Boeing" );
@ccrazzy9761
@ccrazzy9761 4 ай бұрын
здесь скорее вопрос не правильный там написан ПАСАЖИРОВ не понятный вообще на колонке два имени с одинаковой длиной а здесь он выводит одного значит это противоречит запросу так как нужно было выводит ПАСАЖИРОВ а не ПАСАЖИРА
@user-iz1kn7wq7f
@user-iz1kn7wq7f 4 ай бұрын
Я думал что код необходимо делать читабельным... Тогда для чего задавать псевдонимы??? Особенно если тебя смотрят новички... Из-за этих псевдонимов нужно все перечитывать несколько раз чтобы разобраться что за псевдоним тот или иной...
@lightman4369
@lightman4369 4 ай бұрын
Вопрос почему так не правильно? SELECT G.good_name FROM Goods G JOIN Payments P ON (P.good = G.good_id) WHERE P.amount > 1 Group by G.good_name --HAVING Count(G.good_name) > 1 Что находится таким запросом?
@vadimershov2816
@vadimershov2816 3 ай бұрын
amount показывает сколько купили единиц, но за один раз по логике таблицы. можно уточнить требования к поиску, но скорее нам это не нужно