Изучаем SQL. №19. SQL views или представления

Изучаем SQL. №19. SQL views или представления (вьюхи)
SQL — высокоуровневый язык и имеет немало плюшек в своих функциональных недрах. Одной из таких, является возможность создания представлений. Это как функция, с уже заготовленным кодом, только в нашем случае — с запросом. Вьюхи могут сильно упростить вам работу, если правильно ими пользоваться. Но, к сожалению или счастью, их не так уж и часто используют. Но это они (разработчики) зря.
Итак, как всегда от слов к делу, поехали!
Традиционно будем создавать базу, наполнять ее и делать всякие гадости в виде запросов. Ну что, создадим свою базу с таблицами и вьюхами?
Continue reading «Изучаем SQL. №19. SQL views или представления»

Изучаем SQL. №18. SQL соединения JOIN


Мы с вами рассмотрели как устроены внешние ключи и связи между таблицами. Теперь пришел логический черед научиться делать выборку информации из этих таблиц. В предыдущих уроках я показывал универсальный вариант с LEFT JOIN, но он не единственный и не самый простой. Так что гоу изучать)).
Начнем с теории.
Чтобы выбирать информацию из нескольких таблиц, существует команда JOIN и имеет несколько вариаций, которые мы и рассмотрим в сегодняшнем уроке.
Внутреннее соединение

  • Cross Joins (Перекрестное соединение)
поле CROSS JOIN поле
  • Natural Joins (Естественное соединений)
поле NATURAL JOIN поле
  • Inner Joins (Внутреннее соединений)
поле INNER JOIN поле ON условие

Внешнее соединение

  • Left (Outer) Joins (Левое (внешнее) соединение)
поле LEFT JOIN поле ON условие
  • Right (Outer) Joins (Правое (внешнее) соединение)
поле RIGHT JOIN поле ON условие

Continue reading «Изучаем SQL. №18. SQL соединения JOIN»

Изучаем SQL. №17. Внешние ключи и связи между таблицами. Многие ко многим.


Продолжаем изучать SQL. Итак, сегодня речь будет идти о связи между таблицами, которую называют «многие ко многим». Самый простой и классический пример, это пример с учениками и учителями. У каждого учителя может быть много учеников, но в то же время у каждого ученика может быть много учителей.
Для организации связи многие ко многим между двумя таблицами необходимо создать третью таблицу, которая будет промежуточной между ними.
От слов к делу. Открываем ваш HeidiSQL и создаем таблицу school. Фанаты же консоли и минимализма могут использовать такие команды как:

CREATE DATABASE school;
USE school;

Continue reading «Изучаем SQL. №17. Внешние ключи и связи между таблицами. Многие ко многим.»

Изучаем SQL. №16. Внешние ключи и связи между таблицами. Один ко многим.

Изучаем SQL. №16. Внешние ключи и связи между таблицами. Один ко многим.
Итак, представим ситуацию, что у нас есть база данных какого-то предприятия. И есть две таблицы. Первая — ФИО рабочего, вторя — их профессии. Допустим, каждый рабочий работает на какой-то профессии, то есть у него одна профессия, но людей с такой профессией в его цеху 100. Отсюда следует, что у рабочего есть одна профессия, а у профессии много рабочих.
Чтобы не запутать вас еще сильнее, давайте приступим к созданию базы данных и ее наполнению.
Запускаем наш сервер, если вы работаете из-под windows. В работе с базой данных MySQL я по прежнему использую HeidiSQL, что и вам советую.
Continue reading «Изучаем SQL. №16. Внешние ключи и связи между таблицами. Один ко многим.»

Изучаем SQL. №15. Внешние ключи и связи между таблицами. Один к одному.


Естественно, что все в одну таблицу не запихнуть. Да и зачем создавать монстра, которого потом не обуздать. При нормализации любая большая таблица распадается на меньшие, с которыми удобней работать в дальнейшем.
ТРИ ТИПА СВЯЗЕЙ МЕЖДУ ТАБЛИЦАМИ
1)Один к одному.
2)Один ко многим.
3)Многие ко многим.
Continue reading «Изучаем SQL. №15. Внешние ключи и связи между таблицами. Один к одному.»

Изучаем SQL. №14. UTF-8 данные в консоли Linux

Если вы уже сделали сайт, тогда пора его расскручивать. Покупайте и используйте контекстную рекламу с https://vinograd.io.

Все уроки данного цикла были проведены на Windows с участие OpenServer. Но, если вы использовали для практических работ Linux сервер, тогда у вас были явные проблемы с кодировкой UTF-8 и выводом кириллических символов в консоли linux. Причиной есть установленная кодировка latin1 по-умолчанию. Посмотреть кодировку можно командой:
Continue reading «Изучаем SQL. №14. UTF-8 данные в консоли Linux»

Изучаем SQL. №13. SQL функции для работы с числами.


Про строковые функции в SQL я уже рассказывал, сегодня поговорим о функциях для работы с числами. Тема довольно простая, так что приступим незамедлительно, а именно — рассмотрим четыре основных функции:

SUM(колонка) — вывод суммы всех чисел.
MIN/MAX(колонка) — выводит минимальное/максимальное число.
COUNT(колонка) — выведет количество записей.
AVG(колонка) — выведет среднее арифметическое.

И снова создадим новую таблицу. Я создаю каждый раз все заново, чтобы вы привыкли это делать вручную. Так как дальше мы будем использовать дополнительные инструменты, которые упростят работу с БД. Но пользоваться консолью нужно уметь.
Continue reading «Изучаем SQL. №13. SQL функции для работы с числами.»

Изучаем SQL. №12.Операторы ветвления MySQL

Изучаем SQL. №12.Операторы ветвления MySQL
В SQL, как и в другом любом высокоуровневом языке имеются операторы ветвления. И это очень помогает при запросах к базе данных или внесения информации. Благодаря операторам ветвления многие процессы упрощаются и автоматизируются.
Итак, приступим. Сегодня мы будем изучать два оператора CASE и IF… ELSE.
Зайдем в консоль и создадим нашу базу данных, к примеру, зоопарка, а в ней таблицу с животными(id, вид животного, количество, человек отвечающий за вид) и заполним ее:
Continue reading «Изучаем SQL. №12.Операторы ветвления MySQL»

UwAmp — легкий web — сервер для windows

UwAmp - легкий web - сервер для windows

Вот уже больше месяца пользуюсь замечательным веб сервером под виндовс, как UwAmp. За весь месяц не поймал ни единой глюки, а возникавшие проблемы легко решались за пару минут, причем в дальнейшем они оказывались фичами. Continue reading «UwAmp — легкий web — сервер для windows»

Изучаем SQL. №11.Изменяем поля. Строковые Функции SQL.

Изучаем SQL. №11.Изменяем поля. Строковые Функции SQL.
Всем привет, сегодня мы будем учиться вносить изменения в таблицу Базы Данных при выводе с помощью строковых функций.
Функция — Блок действий с название. Она может производить действия, а также возвращать значение на место вызова.
ВНИМАНИЕ! Строковые функции НЕ изменяют данные в самой таблице, а лишь выводят нужный результат, как будто эти изменения произошли.

Существуют такие функции:

RIGHT/LEFT(поле, количество символов) — функция вернет символы в заданном количестве слева/справа от значения в поле.

SUBSTRING_INDEX(поле,’разделитель’, номер разделителя) — функция вернет все символы до разделителя.

UPPER/LOWER(поле) — выводит значения в верхнем/нижнем регистре.

RTRIM/LTRIM(поле) — удалит пробелы справа/слева.

CONCAT(‘Строка1’, ‘Строка2’)  — соединяет строки.

Continue reading «Изучаем SQL. №11.Изменяем поля. Строковые Функции SQL.»