Performance-стратегия для вашего бизнеса Мы специализируемся на performance-подходе при разработке и реализации стратегий по привлечению клиентов из интернета
большое спасибо за объяснение что это происходит именно внутри фреймворка и именно в тех местах, которые нам выделены для написания кода и что мы не всегда имеем над ними полный контроль!
@Rclass5 сағат бұрын
Старались для вас 😊
@artfiltersaiКүн бұрын
Очень понравился, без воды, все по делу, ждем еще таких докладов
@alexzhaliazouski59242 күн бұрын
как вам не стыдно сделать ролики на такую важную тему и на продолжать их
@RclassКүн бұрын
Добрый день! Презентация по следующей части готова, ролик снимать будем через неделю-две. Напишите в личку в телеграм нашему техдиру: @qantus - выдадим вам ссылку :)
@dj_omen2 күн бұрын
Таблица users а выбирают из workers. Нормальное начало))
@millkiway36822 күн бұрын
Почему картавых и неуверенных в себе людей заставляют этим заниматься. По населению картавых людей 2%, но судя по Ютубу кроме них некому больше этим заниматься
@subarin48024 күн бұрын
Непонятно зачем в этот список Nuxt попал)
@Rclass3 күн бұрын
Там половина не понятно зачем) Дикий компот :) Но вот так попросили осветить)
@Siplyi_s_otvertkoij9 күн бұрын
вообще не понимаю, чем третья усиленная форма отличается от второй, если что там, что там, мы вводим таблицу связей
@infotauta923413 күн бұрын
Вам бы в языки типизирование пойти а не ПХП засирать, со своей типизацией! Кто вас тут держит!!!???
@Rclass12 күн бұрын
Мы прекрасно понимаем и плюсы и минусы динамической типизации и то что нам дают выбор очень ценим. В первую очередь мы за то чтобы развивался язык на котором работаем - не больше и не меньше.
@infotauta923412 күн бұрын
@@Rclass Спасибо за ответ! Никто ни в коей мере не говорит о стагнации! Но на данный момент по моему мнению. Наш ПХП превращается в помойную яму в которую спихивают все. Не понимая, не осознавая, не думая. Хорошо ли это. Какие улучшения это дает. Гляньте на свое видео. Кака упала скорость (Да в 8.2 может и поднялась)!!! А сколько дурочков не думая прыгают с версии на версию. Это как с пластиком на планете. Тотальное, не обдуманное использование. И какой результат. Вот скажите мне, зачем теперь отрицательный индекс в массиве!!!??? Спору нет проверка json на валидность это хорошо. ?? это хорошо. Много хорошего. НО ещё больше плохого. Та же типизация. Предположим кто то хочет. Ну тогда пускай, он включит это. А в ядре все как было до этого.
@user-zs4kv4ii7d21 күн бұрын
О своей лекции автор точно сказал на 4-й минуте. Выключаю.
@websoda25 күн бұрын
имба
@DimaTiunov28 күн бұрын
5.20 так сделай Contact объектом (Интерфейсом), а в нужном месте передавай реализаций и пройдёшь ревью
@donjuanfamily1128Ай бұрын
Итнро топ, чисто за него сразу лайк 👍
@RclassАй бұрын
Спасибо)
@guilbertde1516Ай бұрын
Отличный ролик, много полезной инфы доступным языком! Спасибо!
@RclassАй бұрын
Для вас стараемся ;)
@DzheintululuАй бұрын
Паспорт можно утерять и будет другой номер, паспорт нельзя за первичный ключ брать
@RclassАй бұрын
Для примера! Всё для примера! Естественно в каждой отдельной ситуации нужно думать головой)
@belphegor6979Ай бұрын
Спасибо Гене, без него бы не понял!
@RclassАй бұрын
Спасибо за отклик)
@TheILOVEYOUXD2 ай бұрын
Парень немного зажатый, я первый раз на канале. Чисто мое мнение, надо мне кажется немного на чиле быть 😅
@TheILOVEYOUXD2 ай бұрын
А так очень полезно, спасибо ❤
@RclassАй бұрын
Сложно на камеру работать, а так Рома у нас в целом всегда на чиле)
@user-nf1td4hh7y2 ай бұрын
Антон спасибо за Ваши лекции, супер
@Rclass2 ай бұрын
Всегда пожалуйста :)
@user-nf1td4hh7y2 ай бұрын
Антон, вы супер объясняете! Спасибо!
@Rclass2 ай бұрын
Спасибо, стараемся :)
@user-si4qz6ps9o2 ай бұрын
ведущий позитивный, класс)
@Rclass2 ай бұрын
Спасибо, мы стараемся)
@GuruNemo2 ай бұрын
можно было бы пару слов сказать про Criteria, что это и зачем.
@Rclass2 ай бұрын
В следующем видео информация эта есть :) И достаточно подробно :)
@GuruNemo2 ай бұрын
слишком много обрезали лектора, иногда он показывает рукой на какие-то пункты и не понятно на какие именно. надо было хотя бы часть экрана оставить, чтобы на нём был виден край текста.
@Rclass2 ай бұрын
Согласны, что-то с этим надо делать. Раньше мы просто экран камерой записывали, но в итоге было тоже плохо(
@GuruNemo2 ай бұрын
а в какой момент Доктрина использует рефлексию при работе с классами объектов?
@Rclass2 ай бұрын
Надо забираться "под капот" )
@GuruNemo2 ай бұрын
так и в чём разница между Active Record и Data Mapper? если и там и там можно в модель запихивать поведение?
@Rclass2 ай бұрын
Гм, в подходе?) Active Record - сам объект умеет себя сохранять и удалять из базы. В DataMapper объект - это просто объект.
@GuruNemo2 ай бұрын
@@Rclass но Rich Model судя по объяснению в видео это тот же Active Record.
@Rclass2 ай бұрын
@@GuruNemo отнюдь. Бизнес-логика и логика уровня работы с сохранением данных - это разные вещи.
@GuruNemo2 ай бұрын
@@Rclass если не пихать бизнес логику в Active Record, то отличия с Rich Model не вижу. Ещё раз пересмотрел видео, но отличия не нашёл кроме обращения напрямую и через Data Mapper.
@jlvby2 ай бұрын
У Зандстры в книге есть рекурсивный DI-контейнер
@Rclass2 ай бұрын
🚀
@user-cx8kh4sb2i2 ай бұрын
все круто, но цокать поменьше надо)
@Rclass2 ай бұрын
Спасибо, исправимся)
@lafoerteaitishnik47932 ай бұрын
PHP-разработчики - самые добрые и нетоксичные среди всех😇
@Rclass2 ай бұрын
Именно так ^_^
@hook_off2 ай бұрын
дай бох здоровья
@Rclass2 ай бұрын
Спасибо)
@mikurrey4162 ай бұрын
Спасибо! Не всё понятно сразу, видимо, нужно еще вернуться к просмотру после небольшой практики. Но в целом - здорово!
@Rclass2 ай бұрын
Спасибо за положительный отклик, нам очень приятно :)
@KGB1st2 ай бұрын
походу у меня вся база в 2 и 3 НФ, я даже составные ключи не делаю.. это уже даже вошло в привычку. Если я вижу, что две совершенно разные сущности сразу создаю таблицу объединения по внешним ключам.. до 4 и 5 НФ даже дело не доходит :)
@Rclass2 ай бұрын
Это же замечательно :) Отличная привычка! Всем бы такую)
@KGB1st2 ай бұрын
@@Rclass ладно.. спасибо.. всегда хотел спросить такую вещь. Хранение и поиск по строкам очень затратно? Тогда почему ФИО мы не разбиваем на имена и отчества, которые часто встречаются, что бы в таком случае фамилию хранить рядом с их индексами и поиск выполнять только по фамилии?
@Rclass2 ай бұрын
@@KGB1st всё зависит от задачи, если у вас огромная информационная система в которой это будет иметь смысл - именно так и нужно делать! :)
@wsg28432 ай бұрын
Ответы по задачам: SELECT worker_id, SUM(salary)FROM `salaries` GROUP BY worker_id; SELECT worker_id, AVG(salary) as salary FROM `salaries` WHERE (date<"2020-03-01") GROUP BY worker_id ORDER BY salary DESC; SELECT MONTH(date) as month, AVG(salary) FROM `salaries` GROUP BY month; SELECT MONTH(date) as month, SUM(salary) as sum FROM `salaries` GROUP BY month HAVING sum >=2000; SELECT COUNT(tag_id) as count, tag_id FROM `tags_tasks` GROUP BY tag_id ORDER BY count DESC; SELECT COUNT(tag_id) as count, tag_id FROM `tags_tasks` GROUP BY tag_id ORDER BY count DESC LIMIT 1 OFFSET 1; SELECT worker_id, COUNT(end_at) as count FROM `tasks` WHERE end_at is not null and worker_id not in (11,12) GROUP BY worker_id ORDER BY count DESC; SELECT MONTH(date), DAY(date), SUM(salary) FROM `salaries` GROUP BY MONTH (date), DAY(date);
@Rclass2 ай бұрын
Лучший подписчик просто :) Спасибо большое :)
@wsg28432 ай бұрын
Запросы, которые получились по задачкам, просто оставлю здесь: 1 SELECT MAX(salary) FROM `salaries`; 2 SELECT description as `Before`, REPLACE(description,"Починить","Исправить") as `After` FROM `tasks` where description LIKE "%починить%" or description LIKE "%исправить%"; 3 SELECT AVG(salary) FROM `salaries` where date>="2020-03-01" and date<"2020-04-01"; 4 SELECT TIME(date) FROM `salaries` where salary=(SELECT MAX(salary) FROM `salaries`); 5 SELECT COUNT(salary) FROM `salaries` where date>="2020-01-01" and date<"2020-03-01"; 6 SELECT SUM(salary) FROM `salaries` where DAY(date)=10; 7 SELECT COUNT(*) FROM `tags_tasks` WHERE task_id in (10,13,22); 8 SELECT COUNT(*) AS total_tasks_started_in_january, SUM(CASE WHEN end_at IS NOT NULL THEN 1 ELSE 0 END) AS completed_tasks_in_january, (SUM(CASE WHEN end_at IS NOT NULL THEN 1 ELSE 0 END) / COUNT(*)) * 100 AS percentage_completed_in_january FROM `tasks` WHERE MONTH(started_at) = 1; 9 SELECT salary, ABS(salary-330) as `diff` FROM `salaries` ORDER BY diff ASC LIMIT 5; 10 SELECT AVG(TIMESTAMPDIFF(MINUTE, started_at, end_at)) FROM `tasks` where started_at is not null and end_at is not null;
@Rclass2 ай бұрын
Спасибо большое :) В закреп, как обычно)
@wsg28432 ай бұрын
Лучший! Антон, респект! И команде, кто помогал Отличное объяснение, коротко и по теме. Спасибо что заморочились с БД и задачками и выложили все это в открытый доступ. Я уже работал с БД, но решил закрыть все пробелы и порешать задачки. Вот запросы которые получились, может кому полезно будет: SELECT * FROM tasks WHERE (created_at>="2020-02-01" and created_at<"2020-03-01") OR (started_at>="2020-02-01" and started_at<"2020-03-01") OR (end_at>="2020-02-01" and end_at<"2020-03-01"); SELECT * FROM tasks WHERE end_at>="2020-01-01" and end_at<"2020-02-01"; SELECT * FROM tasks WHERE started_at is not null and end_at is null ORDER BY started_at DESC; SELECT * FROM tasks WHERE description like "%бюджет%"; SELECT * FROM tasks ORDER BY created_at DESC LIMIT 3; SELECT * FROM tasks WHERE started_at is null ORDER BY created_at ASC LIMIT 2; SELECT * FROM tasks WHERE worker_id IN (8,9,11); SELECT * FROM tasks WHERE end_at is not null or started_at is null; SELECT * FROM tasks WHERE creator_id=worker_id; SELECT * FROM tasks WHERE description LIKE "%изменить%" or (creator_id=12 and end_at is null);
@Rclass2 ай бұрын
Спасибо! За ответы особенно! В закреп!
@wickedtorpedo753 ай бұрын
хочется чтобы учитель был моим тимлидом в проекте
@Rclass3 ай бұрын
Спасибо, стараемся :)
@P_B_N_D3 ай бұрын
Мне нужен такой Гена, на моей работе!😅
@Rclass3 ай бұрын
Нам всем иногда нужен Гена)
@exLesnick3 ай бұрын
По факту: первый человек, что указал на концептуальное различие между тремя моделями проектирования. А за эту неделю я просмотрел многих...
@Rclass3 ай бұрын
Спасибо, мы старались ^_^
@user-ok8dp3mt1w3 ай бұрын
Очень круто розжевал. Иногда автор затачивает видео под какой-то конкретный язык что на мое мнение не является правильным так как язык это просто инструмент. В этом видео все будет понятно в не зависимости от языка программирования. Спасибо)
@Rclass3 ай бұрын
Именно этого и хотелось добиться, спасибо :)
@user-vu9du2ui4m3 ай бұрын
Подскажите, где можно ответы на дз посмотреть? Хочется свериться
@Rclass3 ай бұрын
Увы, ответов нет(
@user-vu9du2ui4m3 ай бұрын
Спасибо большое, классная подача!
@Rclass3 ай бұрын
Спасибо что смотрите:)
@olegkonyushevsky62163 ай бұрын
Объясните, пожалуйста. Третья нормальная форма предполагает, согласно видео, отсутствие связей между неключевыми атрибутами. Однако в правой таблице появляется связь между именем и телефоном: первичный ключ -> имя -> телефон. Получается транзитивная зависимость, или я неправильно понял? В свою очередь идентификатор шины никак не связан с поставщиком, а мы в примере наоборот их разносим в разные таблицы. Хотя они зависят от первичного ключа и не зависят друг от друга . Согласно тому что говорит "Гена", так и должно быть. Почему мы тогда их разнесли в разные таблицы?
@user-ii3ip7ye1z3 ай бұрын
О боже, пошел в шарагу после 9 на программиста т.к. думал что это халявный диплом IT-шника, а теперь сижу тут и пытаюсь вникнуть. Спасибо за ролик, благодаря вам меня допустят к практике.
@user-pi3jy4qz7i3 ай бұрын
в конце про нормализацию когда рассказывали, там же ошибка больше логическая в примере чем проблема не оптимальности, премия сотруднику начислялась по ОТДЕЛУ а не по тому какой он сотрудник, значит там никак у двух разных разрабов премия быть разной не может, после решили что у разрабов премия 20, так разделение таблиц нужно было что бы избавиться от двух одинаковых записей а не пофиксить, что у одного 10 а у другого 20.
@millkiway36823 ай бұрын
В первых 10 минутах 10 ошибок и не верных терминов.
@muhammadumarsotvoldiev87683 ай бұрын
Спасибо огромное
@Rclass3 ай бұрын
Спасибо за отклик :)
@zagar_on13 ай бұрын
Очень годно и доступно обьяснил , читал википедию , смотрел видео на ютубе , очень скудная инфа , а тут все просто и по полкам , респект !!!!! А главное хорошие примери
@Rclass3 ай бұрын
Спасибо, мы старались :)
@user-gv4rc2hg4k3 ай бұрын
Ребята, огромное спасибо вам. Доклад очень полезный, все объясняете максимально понятным языком!
@Rclass3 ай бұрын
Для вас стараемся :)
@ruslanm.11204 ай бұрын
Уже хочется про 8.3 доклад от выступающего
@Rclass4 ай бұрын
Вы не поверите! Он уже на канале! :)
@ruslanm.11204 ай бұрын
@@Rclass уже посмотрел!)
@Rclass3 ай бұрын
@@ruslanm.1120 Ееее!
@asyahaila4 ай бұрын
Забавное совпадение когда лектор исчез рассказывая про TTL для memcached
@Rclass4 ай бұрын
Магия, не иначе :)
@Anshegar4 ай бұрын
АЛИЛУЯ, наконецто нормальное и простое объяснение этиого заумного(не умного, а имено избыточно заумного) пиздеца.
@BYGUR4 ай бұрын
Серия и Номер паспорта сходу - плохой первыичный ключ, потому что паспорт меняется с возрастом, а также с утерей. СНИЛС или ИНН (физ. лица) - вот они пожизненные и не меняются.
@Rclass4 ай бұрын
Как обычно - все зависит от задач) Каждый раз надо понимать с какими данными вы будете работать и какие гипотетические коллизии могут возникать.
@alekseykononenko78974 ай бұрын
Всё понятно и доступно, осталось только применить полученные знания на практике. Большое спасибо!
Пікірлер
большое спасибо за объяснение что это происходит именно внутри фреймворка и именно в тех местах, которые нам выделены для написания кода и что мы не всегда имеем над ними полный контроль!
Старались для вас 😊
Очень понравился, без воды, все по делу, ждем еще таких докладов
как вам не стыдно сделать ролики на такую важную тему и на продолжать их
Добрый день! Презентация по следующей части готова, ролик снимать будем через неделю-две. Напишите в личку в телеграм нашему техдиру: @qantus - выдадим вам ссылку :)
Таблица users а выбирают из workers. Нормальное начало))
Почему картавых и неуверенных в себе людей заставляют этим заниматься. По населению картавых людей 2%, но судя по Ютубу кроме них некому больше этим заниматься
Непонятно зачем в этот список Nuxt попал)
Там половина не понятно зачем) Дикий компот :) Но вот так попросили осветить)
вообще не понимаю, чем третья усиленная форма отличается от второй, если что там, что там, мы вводим таблицу связей
Вам бы в языки типизирование пойти а не ПХП засирать, со своей типизацией! Кто вас тут держит!!!???
Мы прекрасно понимаем и плюсы и минусы динамической типизации и то что нам дают выбор очень ценим. В первую очередь мы за то чтобы развивался язык на котором работаем - не больше и не меньше.
@@Rclass Спасибо за ответ! Никто ни в коей мере не говорит о стагнации! Но на данный момент по моему мнению. Наш ПХП превращается в помойную яму в которую спихивают все. Не понимая, не осознавая, не думая. Хорошо ли это. Какие улучшения это дает. Гляньте на свое видео. Кака упала скорость (Да в 8.2 может и поднялась)!!! А сколько дурочков не думая прыгают с версии на версию. Это как с пластиком на планете. Тотальное, не обдуманное использование. И какой результат. Вот скажите мне, зачем теперь отрицательный индекс в массиве!!!??? Спору нет проверка json на валидность это хорошо. ?? это хорошо. Много хорошего. НО ещё больше плохого. Та же типизация. Предположим кто то хочет. Ну тогда пускай, он включит это. А в ядре все как было до этого.
О своей лекции автор точно сказал на 4-й минуте. Выключаю.
имба
5.20 так сделай Contact объектом (Интерфейсом), а в нужном месте передавай реализаций и пройдёшь ревью
Итнро топ, чисто за него сразу лайк 👍
Спасибо)
Отличный ролик, много полезной инфы доступным языком! Спасибо!
Для вас стараемся ;)
Паспорт можно утерять и будет другой номер, паспорт нельзя за первичный ключ брать
Для примера! Всё для примера! Естественно в каждой отдельной ситуации нужно думать головой)
Спасибо Гене, без него бы не понял!
Спасибо за отклик)
Парень немного зажатый, я первый раз на канале. Чисто мое мнение, надо мне кажется немного на чиле быть 😅
А так очень полезно, спасибо ❤
Сложно на камеру работать, а так Рома у нас в целом всегда на чиле)
Антон спасибо за Ваши лекции, супер
Всегда пожалуйста :)
Антон, вы супер объясняете! Спасибо!
Спасибо, стараемся :)
ведущий позитивный, класс)
Спасибо, мы стараемся)
можно было бы пару слов сказать про Criteria, что это и зачем.
В следующем видео информация эта есть :) И достаточно подробно :)
слишком много обрезали лектора, иногда он показывает рукой на какие-то пункты и не понятно на какие именно. надо было хотя бы часть экрана оставить, чтобы на нём был виден край текста.
Согласны, что-то с этим надо делать. Раньше мы просто экран камерой записывали, но в итоге было тоже плохо(
а в какой момент Доктрина использует рефлексию при работе с классами объектов?
Надо забираться "под капот" )
так и в чём разница между Active Record и Data Mapper? если и там и там можно в модель запихивать поведение?
Гм, в подходе?) Active Record - сам объект умеет себя сохранять и удалять из базы. В DataMapper объект - это просто объект.
@@Rclass но Rich Model судя по объяснению в видео это тот же Active Record.
@@GuruNemo отнюдь. Бизнес-логика и логика уровня работы с сохранением данных - это разные вещи.
@@Rclass если не пихать бизнес логику в Active Record, то отличия с Rich Model не вижу. Ещё раз пересмотрел видео, но отличия не нашёл кроме обращения напрямую и через Data Mapper.
У Зандстры в книге есть рекурсивный DI-контейнер
🚀
все круто, но цокать поменьше надо)
Спасибо, исправимся)
PHP-разработчики - самые добрые и нетоксичные среди всех😇
Именно так ^_^
дай бох здоровья
Спасибо)
Спасибо! Не всё понятно сразу, видимо, нужно еще вернуться к просмотру после небольшой практики. Но в целом - здорово!
Спасибо за положительный отклик, нам очень приятно :)
походу у меня вся база в 2 и 3 НФ, я даже составные ключи не делаю.. это уже даже вошло в привычку. Если я вижу, что две совершенно разные сущности сразу создаю таблицу объединения по внешним ключам.. до 4 и 5 НФ даже дело не доходит :)
Это же замечательно :) Отличная привычка! Всем бы такую)
@@Rclass ладно.. спасибо.. всегда хотел спросить такую вещь. Хранение и поиск по строкам очень затратно? Тогда почему ФИО мы не разбиваем на имена и отчества, которые часто встречаются, что бы в таком случае фамилию хранить рядом с их индексами и поиск выполнять только по фамилии?
@@KGB1st всё зависит от задачи, если у вас огромная информационная система в которой это будет иметь смысл - именно так и нужно делать! :)
Ответы по задачам: SELECT worker_id, SUM(salary)FROM `salaries` GROUP BY worker_id; SELECT worker_id, AVG(salary) as salary FROM `salaries` WHERE (date<"2020-03-01") GROUP BY worker_id ORDER BY salary DESC; SELECT MONTH(date) as month, AVG(salary) FROM `salaries` GROUP BY month; SELECT MONTH(date) as month, SUM(salary) as sum FROM `salaries` GROUP BY month HAVING sum >=2000; SELECT COUNT(tag_id) as count, tag_id FROM `tags_tasks` GROUP BY tag_id ORDER BY count DESC; SELECT COUNT(tag_id) as count, tag_id FROM `tags_tasks` GROUP BY tag_id ORDER BY count DESC LIMIT 1 OFFSET 1; SELECT worker_id, COUNT(end_at) as count FROM `tasks` WHERE end_at is not null and worker_id not in (11,12) GROUP BY worker_id ORDER BY count DESC; SELECT MONTH(date), DAY(date), SUM(salary) FROM `salaries` GROUP BY MONTH (date), DAY(date);
Лучший подписчик просто :) Спасибо большое :)
Запросы, которые получились по задачкам, просто оставлю здесь: 1 SELECT MAX(salary) FROM `salaries`; 2 SELECT description as `Before`, REPLACE(description,"Починить","Исправить") as `After` FROM `tasks` where description LIKE "%починить%" or description LIKE "%исправить%"; 3 SELECT AVG(salary) FROM `salaries` where date>="2020-03-01" and date<"2020-04-01"; 4 SELECT TIME(date) FROM `salaries` where salary=(SELECT MAX(salary) FROM `salaries`); 5 SELECT COUNT(salary) FROM `salaries` where date>="2020-01-01" and date<"2020-03-01"; 6 SELECT SUM(salary) FROM `salaries` where DAY(date)=10; 7 SELECT COUNT(*) FROM `tags_tasks` WHERE task_id in (10,13,22); 8 SELECT COUNT(*) AS total_tasks_started_in_january, SUM(CASE WHEN end_at IS NOT NULL THEN 1 ELSE 0 END) AS completed_tasks_in_january, (SUM(CASE WHEN end_at IS NOT NULL THEN 1 ELSE 0 END) / COUNT(*)) * 100 AS percentage_completed_in_january FROM `tasks` WHERE MONTH(started_at) = 1; 9 SELECT salary, ABS(salary-330) as `diff` FROM `salaries` ORDER BY diff ASC LIMIT 5; 10 SELECT AVG(TIMESTAMPDIFF(MINUTE, started_at, end_at)) FROM `tasks` where started_at is not null and end_at is not null;
Спасибо большое :) В закреп, как обычно)
Лучший! Антон, респект! И команде, кто помогал Отличное объяснение, коротко и по теме. Спасибо что заморочились с БД и задачками и выложили все это в открытый доступ. Я уже работал с БД, но решил закрыть все пробелы и порешать задачки. Вот запросы которые получились, может кому полезно будет: SELECT * FROM tasks WHERE (created_at>="2020-02-01" and created_at<"2020-03-01") OR (started_at>="2020-02-01" and started_at<"2020-03-01") OR (end_at>="2020-02-01" and end_at<"2020-03-01"); SELECT * FROM tasks WHERE end_at>="2020-01-01" and end_at<"2020-02-01"; SELECT * FROM tasks WHERE started_at is not null and end_at is null ORDER BY started_at DESC; SELECT * FROM tasks WHERE description like "%бюджет%"; SELECT * FROM tasks ORDER BY created_at DESC LIMIT 3; SELECT * FROM tasks WHERE started_at is null ORDER BY created_at ASC LIMIT 2; SELECT * FROM tasks WHERE worker_id IN (8,9,11); SELECT * FROM tasks WHERE end_at is not null or started_at is null; SELECT * FROM tasks WHERE creator_id=worker_id; SELECT * FROM tasks WHERE description LIKE "%изменить%" or (creator_id=12 and end_at is null);
Спасибо! За ответы особенно! В закреп!
хочется чтобы учитель был моим тимлидом в проекте
Спасибо, стараемся :)
Мне нужен такой Гена, на моей работе!😅
Нам всем иногда нужен Гена)
По факту: первый человек, что указал на концептуальное различие между тремя моделями проектирования. А за эту неделю я просмотрел многих...
Спасибо, мы старались ^_^
Очень круто розжевал. Иногда автор затачивает видео под какой-то конкретный язык что на мое мнение не является правильным так как язык это просто инструмент. В этом видео все будет понятно в не зависимости от языка программирования. Спасибо)
Именно этого и хотелось добиться, спасибо :)
Подскажите, где можно ответы на дз посмотреть? Хочется свериться
Увы, ответов нет(
Спасибо большое, классная подача!
Спасибо что смотрите:)
Объясните, пожалуйста. Третья нормальная форма предполагает, согласно видео, отсутствие связей между неключевыми атрибутами. Однако в правой таблице появляется связь между именем и телефоном: первичный ключ -> имя -> телефон. Получается транзитивная зависимость, или я неправильно понял? В свою очередь идентификатор шины никак не связан с поставщиком, а мы в примере наоборот их разносим в разные таблицы. Хотя они зависят от первичного ключа и не зависят друг от друга . Согласно тому что говорит "Гена", так и должно быть. Почему мы тогда их разнесли в разные таблицы?
О боже, пошел в шарагу после 9 на программиста т.к. думал что это халявный диплом IT-шника, а теперь сижу тут и пытаюсь вникнуть. Спасибо за ролик, благодаря вам меня допустят к практике.
в конце про нормализацию когда рассказывали, там же ошибка больше логическая в примере чем проблема не оптимальности, премия сотруднику начислялась по ОТДЕЛУ а не по тому какой он сотрудник, значит там никак у двух разных разрабов премия быть разной не может, после решили что у разрабов премия 20, так разделение таблиц нужно было что бы избавиться от двух одинаковых записей а не пофиксить, что у одного 10 а у другого 20.
В первых 10 минутах 10 ошибок и не верных терминов.
Спасибо огромное
Спасибо за отклик :)
Очень годно и доступно обьяснил , читал википедию , смотрел видео на ютубе , очень скудная инфа , а тут все просто и по полкам , респект !!!!! А главное хорошие примери
Спасибо, мы старались :)
Ребята, огромное спасибо вам. Доклад очень полезный, все объясняете максимально понятным языком!
Для вас стараемся :)
Уже хочется про 8.3 доклад от выступающего
Вы не поверите! Он уже на канале! :)
@@Rclass уже посмотрел!)
@@ruslanm.1120 Ееее!
Забавное совпадение когда лектор исчез рассказывая про TTL для memcached
Магия, не иначе :)
АЛИЛУЯ, наконецто нормальное и простое объяснение этиого заумного(не умного, а имено избыточно заумного) пиздеца.
Серия и Номер паспорта сходу - плохой первыичный ключ, потому что паспорт меняется с возрастом, а также с утерей. СНИЛС или ИНН (физ. лица) - вот они пожизненные и не меняются.
Как обычно - все зависит от задач) Каждый раз надо понимать с какими данными вы будете работать и какие гипотетические коллизии могут возникать.
Всё понятно и доступно, осталось только применить полученные знания на практике. Большое спасибо!
Спасибо, мы старались сделать понятно :)