Платформы корпоративных информационных систем


SELECT



SELECT


SELECT [DISTINCT] columns FROM table [clause]

Выбирает данные из таблицы. Оператор SELECT является основным методом чтения данных из таблиц баз данных.

Если вы укажете несколько таблиц, mSQL автоматически объединит таблицы для сравнения записей.

Если указано ключевое слово DISTINCT, будет показана только одна запись из каждой группы одинаковых записей возвращаемого набора.

Имена столбцов могут быть указаны как column или как table, column . Длинная форма необходима только для того, чтобы отличать столбцы с одинаковыми именами, но ее можно использовать в любое время (например, SELECT name FROM people; SELECT people, name FROM people ).

Список таблиц для соединения указывается как Table1, Table2, Tab-1еЗ, .... Таблицы будут соединены таким образом, как mSQL сочтет наиболее эффективным. Именам таблиц могут быть присвоены псевдонимы (например, SELECT t1.name, t2.address FROM Iong_table_name=t1, Ionger_table_name=t2 ). Если не указано выражение clause, SELECT вернет все данные из выбранной таблицы (или таблиц).

Выражение отбора записей может содержать следующие операторы:

WHERE

Конструкция WHERE является основным способом поиска данных в SQL. В конструкции сравниваются два и более значений. Можно использовать значения с именами (такие как имена столбцов и псевдонимы), числовые константы и строки. Поддерживаются следующие операторы:

AND

Выполняет логическое И (вернет 0, если хоть один из аргументов равен 0, иначе вернет 1).

OR

Выполняет логическое ИЛИ (возвращает 1, если любой из аргументов не равен 0, иначе возвращает 0).

()

Скобки используются для группировки операторов, чтобы указать старшинство.

=

Возвращает 1, если два значения совпадают, иначе вернет 0. mSQL автоматически преобразует типы при сравнении значений.

<>

Возвращает 1, если два значения не совпадают, иначе возвращает 0.

<=

Возвращает 1, если левое значение меньше или равно правому, иначе возвращает 0.

<

Возвращает 1, если левое значение меньше, чем значение справа, иначе возвращает 0.

>=

Возвращает 1, если левое значение больше или равно правому, иначе возвращает 0.

>

Возвращает 1, если левое значение больше правого, иначе возвращает 0.

ORDER BY column [DESC][, column2 [DESC],...]

Сортирует возвращаемые данные по заданному столбцу (или столбцам). Если указать DESC, данные будут отсортированы в порядке убывания, иначе будет использована сортировка по возрастанию (например, SELECT name, age FROM people ORDER BY age DESC ).

value1 LIKE value2

Сравнивает valuel и value2 и возвращает 1, если они совпадают. Значение справа может содержать знак подстановки « % », который заменяет любое количество символов (в том числе и отсутствие символа), и знак '_', замещающий в точности один символ. Это, возможно, наиболее употребительное в SQL сравнение. Чаще всего используется сравнение поля с некоторой строкой, содержащей знак подстановки (например, SELECT name FROM people WHERE name LIKE 'B%' ).

value1 RLIKE value2

Сравнивает valuel и value2, используя расширенный синтаксис регулярных выражений, и возвращает 1, если они совпадают. Значение справа может содержать полные подстановочные выражения и конструкции Unix (например, SELECT name FROM people WHERE name RLIKE '^В. *').

value1 CLIKE value2

Сравнивает value1 с value2, используя нечувствительную к регистру версию оператора LIKE (например, SELECT name FROM people WHERE name CLIKE 'b%' ).

Предложение WHERE возвращает все записи, для которых значение заданного выражения не равно 0 или NULL. Таким образом, SELECT age FROM people WHERE age>10 вернет только те записи, где 'ages' больше 10.









Начало  Назад  Вперед