Метасимволы оператора LIKE




Команды управления БД.

CREATE DATABASE

Оператор, который создает новую базу данных, имеет следующий формат:

create database имя_базы_данных;

Пример:

create database user;

Максимальная длина имени БД составляет 64 знака и может включать буквы, цифры, символ "_" и символ "$". Имя может начинаться с цифры, но не должно полностью состоять из цифр. Любой запрос к БД заканчивается точкой с запятой (этот символ называется разделителем). Получив запрос, сервер выполняет его и в случае успеха выдает сообщение "Query OK..."

USE

Оператор, который позволяет выбрать существующую базу данных, имеет формат:

use имя_базы_данных;

Пример:

use user;

CREATE TABLE

Оператор, который создает новую таблицу в выбранной базе данных, имеет формат:

create table имя_табл (имя_первого_столбца тип, имя_последнего_столбца тип);

Пример:

create table age(user_id int, user_name text, user_age int);

Требования к именам таблиц и столбцов такие же, как и для имен БД. К каждому столбцу привязан определенный тип данных, который ограничивает характер информации, которую можно хранить в столбце (например, предотвращает ввод букв в числовое поле). MySQL поддерживает несколько типов данных: числовые, строковые, календарные и специальный тип NULL, обозначающий отсутствие информации.

SHOW DATABASES

Оператор показывает все имеющиеся базы данных.

SHOW TABLES

Оператор показавает список таблиц текущей БД (предварительно ее надо выбрать с помощью оператора use).

DESCRIBE

Оператор показавает описание столбцов указанной таблицы, имеет формат:

describe имя_таблицы;

Пример:

describe age;

DROP

Оператор позволяет удалять таблицы и БД, имеет формат:

drop table имя_таблицы;

Пример:

drop age;

INSERT

Оператор позволяющий добавлять данные в таблицу, имеет формат:

INSERT INTO имя_таблицы VALUES ('значение_первого_столбца','значение_второго_столбца',..., 'значение_последнего_столбца')

 

Или же для того чтобы вставить в определенные поля в таблице используется:

INSERT INTO имя_таблицы ('имя_столбца', 'имя_столбца') VALUES ('значение_первого_столбца','значение_второго_столбца');

Если бы у нас были поля с типом NULL, т.е. необязательные для заполнения, мы бы тоже могли их проигнорировать. А вот если попытаться оставить пустым поле со значением NOT NULL, то сервер выдаст сообщение об ошибке и не выполнит запрос. Кроме того, при внесении данных сервер проверяет связи между таблицами. Поэтому вам не удастся внести в поле, являющееся внешним ключом, значение, отсутствующее в связанной таблице. В этом вы убедитесь, внося данные в оставшиеся две таблицы.

Пример:

INSERT INTO info (login, sex, pass) VALUES ('Alex','man', '123');

SELECT

Оператор позволяет извлечь или показать данные из таблицы, имеет формат:

SELECT что_выбрать FROM откуда_выбрать;

Вместо "что_выбрать" мы должны указать либо имя столбца, значения которого хотим увидеть, либо имена нескольких столбцов через запятую, либо символ звездочки (*), означающий выбор всех столбцов таблицы. Вместо "откуда_выбрать" следует указать имя таблицы.

Пример:

SELECT * FROM info;

Для того чтобы отсортировать данные в таблице, можно воспользоваться ключем ORDER BY, который применятся так:

SELECT имя_столбца FROM имя_таблицы ORDER BY имя_столбца_сортировки;

Пример:

SELECT * FROM info ORDER BY sex;

По умолчанию сортировка идет по возрастанию, но это можно изменить, добавив ключевое слово DESC.

Пример:

SELECT * FROM info ORDER BY sex DESC;

 

Очень часто нам не нужна вся информация из таблицы. Например, мы хотим узнать, сколько имеется в базе пользователей с именем «Alex». Для этого нам потребуется ключ WHERE, который имеет формат:

SELECT имя_столбца FROM имя_таблицы WHERE условие;

Пример:

SELECT * FROM info WHERE login=’Alex’;

Условные операторы.

Оператор Описание
= (равно) Отбираются значения равные указанному Пример: SELECT * FROM info WHERE id_preson=1;
> (больше) Отбираются значения больше указанного Пример: SELECT * FROM info WHERE id_preson>1;
< (меньше) Отбираются значения меньше указанного Пример: SELECT * FROM info WHERE id_preson<1;
>= (больше или равно) Отбираются значения большие и равные указанному Пример: SELECT * FROM info WHERE id_preson>=1;
<= (меньше или равно) Отбираются значения меньшие и равные указанному Пример: SELECT * FROM info WHERE id_preson<=1;
!= (не равно) Отбираются значения не равные указанному Пример: SELECT * FROM info WHERE id_preson!=1;
IS NOT NULL Отбираются строки, имеющие значения в указанном поле Пример: SELECT * FROM info WHERE id_preson IS NOT NULL;
IS NULL Отбираются строки, не имеющие значения в указанном поле Пример: SELECT * FROM info WHERE id_preson IS NULL;
BETWEEN (между) Отбираются значения, находящиеся между указанными Пример: SELECT * FROM info WHERE id_preson BETWEEN 1 AND 3;
IN (значение содержится) Отбираются значения, соответствующие указанным Пример: SELECT * FROM info WHERE id_preson IN (1, 4);
NOT IN (значение не содержится) Отбираются значения, кроме указанных Пример: SELECT * FROM info WHERE id_preson NOT IN (1, 4);
LIKE (соответствие) Отбираются значения, соответствующие образцу Пример: SELECT * FROM info WHERE id_preson LIKE 'Al%';
NOT LIKE (не соответствие) Отбираются значения, не соответствующие образцу Пример: SELECT * FROM info WHERE id_preson NOT LIKE 'Al%';

Метасимволы оператора LIKE

Но может возникнуть проблема, т.к. не всегда удобно в условии писать точное имя, число или другое значение. Поэтому для поиска используются специальные метасимволы.

Поиск с использованием метасимволов может осуществляться только в текстовых полях.

Самый распространенный метасимвол - %. Он означает любые символы. Например, если нам надо найти слова, начинающиеся с букв "Al", то мы напишем LIKE 'Al%', а если мы хотим найти слова, которые содержат символы "Alex", то мы напишем LIKE '%Alex%.

Пример:

SELECT * FROM info WHERE login LIKE 'Al%';

Вложенные запросы

Приведенные выше примеры обращались только к 1 таблице, на практике же уже практические не встречаются запросы исключительно к одной из таблиц БД, поэтому применяют вложенные запросы.

Допустим, что нам необходимо получить возраст пользователей из таблицы «age» пол которых соответствует параметру «man». Формат вложенного запроса находится ниже:

SELECT имя_столбца FROM имя_таблицы WHERE часть условия IN

(SELECT имя_столбца FROM имя_таблицы WHERE часть условия IN

(SELECT имя_столбца FROM имя_таблицы WHERE условие)

);

Разберёмся на примере:

SELECT user_age FROM age WHERE user_id IN

(

SELECT id_person FROM info WHERE sex=’man’

);

 

Редактирование данных



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-08-07 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: