Главная страница
Навигация по странице:

  • Сотрудник ; кортеж

  • Тип данных Описание Пример

  • Рекомендации по выбору типов данных для полей таблицы.

  • обычные символы

  • Символ-шаблон

  • SQL лаба. Терминология отношение


    Скачать 27.38 Kb.
    НазваниеТерминология отношение
    АнкорSQL лаба
    Дата02.11.2021
    Размер27.38 Kb.
    Формат файлаdocx
    Имя файлаcommands.docx
    ТипДокументы
    #261617

    Терминология

    • отношение  – это структура данных целиком, набор записей (в обычном понимании – таблица) , в  примере –это Сотрудник;

    • кортеж– это каждая строка, содержащая данные (более распространенный термин – запись ), например, <001, Борин С.А, 234-01-23, программист>, все кортежи в отношении должны быть различны;

    • мощность– число кортежей в таблице (проще говоря, число записей), в данном случае 3, мощность отношения может быть любой (от 0 до бесконечности), порядок следования кортежей - неважен;

    • атрибут – это столбец в таблице (более распространенный термин – поле ), в примере – Табельный номер, Фамилия И.О., Телефон, Должность

    • размерность – это число атрибутов в таблице, в данном случае – 4;

    • размерность отношения должна быть больше 0, порядок следования атрибутов существенен;

    •  домен атрибута– это допустимые значения (неповторяющиеся), которые можно занести в поле , например для атрибута Должность домен – {инженер, программист}.




    Тип данных

    Описание

    Пример

    INT 
    INTEGER

    Целое число, могут принимать значения
    от -2 147 483 648 до 2 147 483 647

    -567
    1205

    DECIMAL
    NUMERIC

    Вещественное число,
    в скобках указывается максимальная
    длина числа (включает символы слева и справа от десятичной запятой)
    и количество знаков после запятой.
    Можно использовать оба этих типа, они эквивалентны,
    принимают значения в диапазоне -1038+1 до 1038-1.
    DECIMAL(4,1)
     NUMERIC(6,3)


     
     
     
    34.6
    -3.294

    DATE

    Дата в формате ГГГГ-ММ-ДД 
    26 июля 2020 года
    3 января 2021 года


     
    2020-07-26
    2021-01-03

    VARCHAR

    Строка длиной не более 255 символов,
    в скобках указывается максимальная
    длина строки, которая может храниться в поле
    VARCHAR(10)(рассматриваются однобайтовые кодировки,
    для которых число в скобках соответствует максимальному
    количеству символов в строке)


     
     

    пример
    описание

    Рекомендации по выбору типов данных для полей таблицы.

    • Выбирайте минимальный тип данных исходя из максимального значения поля. Например, если максимальный текст, который может быть записан в поле, имеет длину 25 символов, значит нужно использовать тип VARCHAR(25).

    • Для описания ключевого поля используйте описание INT PRIMARY KEY AUTO_INCREMENT (book_id INT PRIMARY KEY AUTO_INCREMENT) Это значит, что в поле будут заноситься различные целые числа, при этом они будут автоматически генерироваться (каждая следующая строка будет иметь значение ключа на 1 больше предыдущего).



    функция

    Описание

    Пример

    CEILING(x)

    возвращает наименьшее целое число, большее или равное x
    (округляет до целого числа в большую сторону)

    CEILING(4.2)=5
    CEILING(-5.8)=-5


    ROUND(x, k)

    округляет значение x до k знаков после запятой,
    если не указано – x округляется до целого

    ROUND(4.361)=4
    ROUND(5.86592,1)=5.9


    FLOOR(x)

    возвращает наибольшее целое число, меньшее или равное x
    (округляет до  целого числа в меньшую сторону)

    FLOOR(4.2)=4
    FLOOR(-5.8)=-6


    POWER(x, y)

    возведение x в степень y

    POWER(3,4)=81.0

    SQRT(x)

    квадратный корень из x

    SQRT(4)=2.0
    SQRT(2)=1.41...


    DEGREES(x)

    конвертирует значение x из радиан в градусы

    DEGREES(3) = 171.8...

    RADIANS(x)

    конвертирует значение из градусов в радианы

    RADIANS(180)=3.14...

    ABS(x)

    модуль числа x

    ABS(-1) = 1
    ABS(1) = 1


    PI()

    pi = 3.1415926...

     

    CREATE TABLE имя (столбцы с указанием типа переменных, через запятую)

    SELECT 'столбцы или * для выбора всех столбцов; обязательно'

    FROM 'таблица; обязательно'

    WHERE 'условие/фильтрация, например, city = 'Moscow'; необязательно'

    GROUP BY 'столбец, по которому хотим сгруппировать данные; необязательно'

    HAVING 'условие/фильтрация на уровне сгруппированных данных; необязательно'

    ORDER BY 'столбец, по которому хотим отсортировать вывод; необязательно'

    Занесение записи в таблицу:

    INSERT INTO таблица(поле1, поле2)

    VALUES (значение1, значение2);

    SELECT * FROM book – Выбрать все записи таблицы book

    SELECT title, amount FROM book; - выбрать столбцы title и amount

    SELECT title AS Название, amount FROM book;

    SELECT price * amount AS total FROM book; - создать поле с названием total, значение price * amount (только с числовыми)

    IF(логическое_выражение, выражение_1, выражение_2) – если истинно, то вносится первое значение, если ложно, то второе

    SELECT title, price FROM book WHERE price < 600; - делает таблицу со столбцами title, price и строками, в которых значение price< 600

    Логическое выражение после ключевого слова WHERE кроме операторов сравнения  и выражений может включать  логические операции (И «and», ИЛИ «or», НЕ «not») и круглые скобки, изменяющие приоритеты выполнения операций.

    Приоритеты операций:

    1. круглые скобки

    2. умножение  (*),  деление (/)

    3. сложение  (+), вычитание (-)

    4. операторы сравнения (=, >, <, >=, <=, <>), BETWEEN, IN

    5. NOT

    6. AND

    7. OR


    SELECT title, amount FROM book WHERE amount BETWEEN 5 AND 14;

    То же самое SELECT title, amount FROM book WHERE amount >= 5 AND amount <=14;
    SELECT title, price FROM book WHERE author IN ('Булгаков М.А.', 'Достоевский Ф.М.');

    Логический порядок операций для запроса SQL следующий:

    1. FROM

    2. WHERE

    3. SELECT

    4. ORDER BY


    ORDER BY выполняет сортировку по возрастанию

    Чтобы управлять направлением сортировки вручную, после имени столбца указывается ключевое слово ASC (по возрастанию) или DESC (по убыванию)
    LIKE позволяет сравнивать строки не на полное совпадение (не совпадение), а в соответствии с шаблоном. Шаблон может включать обычные символы и символы-шаблоны

    Символ-шаблон

    Описание

    Пример

    %

    Любая строка, содержащая ноль или более символов

    SELECT * FROM book WHERE author LIKE '%М.%'
    выполняет поиск и выдает все книги, инициалы авторов которых содержат «М.»

    (подчеркивание)

    Любой одиночный символ

    SELECT * FROM book WHERE title LIKE 'Поэм_'
    выполняет поиск и выдает все книги, названия которых либо «Поэма», либо «Поэмы» и пр.


    написать администратору сайта