SQLсервер в Linux -самостоятельное освоение пакета


Операторы и функции


Операторы и функции
Операторы и функции В этой главе рассматриваются операторы и функции PostgreSQL, то есть специальные символы и идентификаторы, предназначенные для модификации и сравнения данных в коман...
Использование функций
Использование функций При вызове функции в команде SQL указывается имя функции, после которого в круглых скобках перечисляются аргументы. Существует два основных стиля передачи аргумент...
Математические функции
Математические функции Математические функции PostgreSQL выполняют стандартные арифметические и тригонометрические операции и работают с разными типами данных. В большинстве случаев тип...
Таблица 5 9 Математические функции PostgreSQL
Таблица 5.9. Математические функции PostgreSQL Функция Описание abs(x) Возвращает модуль (абсолютное значение) х acos(x) Возвращает арккоси...
Пример 1
testdb=# SELECT abs(lOO) AS abs_positive. testdb-# abs(-lOO) AS absjiegative: abs_positive | absjiegative 100 100 (1 row) acos() Синтаксис: acos(x) Функция acos () возвраща...
Пример 2
testdb=# SELECT acos(l). acos(O), acos(-l). testdb-# acos(cosd)) AS inverse_example: acos | acos | acos | inverse_example 0 | 1.5707963267949 | 3.14159265358979 | (1 row) asin()...
Пример 3
testdb=# SELECT asin(l), asin(O), asin(-l), testdb-# asin(sind)) AS inverse_examp1e; asin | asin [ asin [ lnverse_example 1.5707963267949 0 | -1.5707963267949 | 1 (1 row) itan()...
Пример 4
testdb=# SELECT atan(l). atan(O). atan(-l), testdb-# atan(tand)) AS inverse_example; atan atan | atan | inverse_example 0.785398163397448 | 0 | -0.785398163397448 | 1 (1 row) itan2...
Пример 5
testdb=# SELECT atan2(0, 1). atan2(l, 1), testdb-# atanCO / 1) AS functionally. testdb-# atand / 1) AS identical; atan2 atan2 | functionally identical 0 i 0.785398163397448 | 0 | 0.78...
Пример 6
testdb=# SELECT pow(2.0. 3) AS "two cubed". testdb-# cbrt(8.0) AS "eight's cube root"; two cubed | eight's cube root 8 | 2 (1 row) ceil() Синтаксис: ceil(...
Пример 7
testdb=# SELECT ceil(1.0). ceil(1.1), ceil(1.5); ceil | ceil ceil 1 | 2 | 2 (1 row) COS() Синтаксис: COSU) Функция cos О получает один аргумент х типа double precision, предс...
Пример 8
testdb=# SELECT cos (pi О) AS cosj>i. testdb-# cos(O) AS cos_zero: cos_pi | cos_zero 1 | 1 (1 row) cot() Синтаксис: cot(x) Функция cot() получает один аргумент х типа d...
Пример 9
testdb=# SELECT cot(l). cot(-l): cot cot 0.642092615934331 | -0.642092615934331 (1 row) degrees() Синтаксис: degrees(r) Функция degreesO получает аргумент г типа double preci...
Пример 10
testdb=# SELECT degrees(acos(-D) AS half_circle. testdb-# degrees(pi) * 2) AS ful1_circle: half_circle | full_circle 180 | 360 (1 row) exp() Синтаксис: exp(x) Функция полу...
Пример 11
testdb=# SELECT exp(O.O) AS one. testdb-# exp(l.O) AS e. testdb-* exp(2.0) AS "e squared": one I e I e squared 1 | 2.71828182845905 | 7.38905609893065 (1 row) floor()...
Пример 12
testdb=# SELECT floor(l.O) AS one. testdb-# floor(1.1) AS "one point one", testdb-# floord.8) AS "one point eight"; one one point one one point eight 1 | 1 | 1...
Пример 13
testdb=# SELECT In(lO.O) AS naturaljog. testdb-| log(expd.O). 10.0) AS naturaljog, testdb-# In(expdO.O)) AS inverse_example: naturaljog | naturaljog | inverse_example 2.30258509299405...
Пример 14
testdb=# SELECT log(12.0) AS logj.2. testdb-# logdO. 12.0) AS logj.2. testdb-# log(3, 12.0) AS "log 12. base 3"; logJ2 logJ2 log 12. base 3 1.07918124604762 | 1.0791812460 |...
Пример 15
testdb=# SELECT mod(5. 5) AS no_remainder. testdo-# mod(6, 5) AS remainder_one, mod(19. 5) AS remainder_four; no_remainder | rema1nder_one | remainder_four 0 | 1 | 4 (1 row) pi(...
Пример 16
testdb=# SELECT pi() AS "the pi constant": the pi constant 3.14159265358979 (1 row) pow() Синтаксис: pow(x.y) Функция pow() получает два аргумента х и у, относя...
Пример 17
testdb=# SELECT pow(2.0, 3.0) AS "two cubed". testdb-# pow(2.0, 2.0) AS "two squared". testdb-# pow(2.0, 1.0) AS "just two"; two cubed | two squared just...
Пример 18
testdb=# SELECT radians(180) AS ha1f_circle. testdb-# radians(360) AS fu11_circle; half_circle | full_cnrcle 3.14159265358979 | 6.28318530717959 (1 row) random () Синтаксис: r...
Пример 19
testdb=# SELECT randonK) AS natural random, testdb-# round(randomO * 9) + I AS one_through_ten. testdb-# truncC randonK) * 99) + 1 AS one_through_one_hundred: natural_random | one_thr...
Пример 20
testdb=# SELECT round(l.O) AS one, testdb-# round(l.l) AS "one point one", testdb | round(1.5) AS "one point five", testdb-# roundd.8) AS "one point eight";...
Пример 21
testdb=# SELECT sin(pi() / 4) AS quarter_pi, testdb-# sin(pi() / 2) AS half_pi: quarter_pi | half_pi 0.707106781186547 | (1 row) sqrt() Синтаксис: sqrt() Функция sqrt() по...
Пример 22
estdb=# SELECT sqrt(2.0), sqrt(4.0), estdb-# sqrt(pow(2.0, 2)) AS inverse_example: sqrt | sqrt | inverse_exampl 1.4142135623731 2 | 2 (1 row) tan() Синтаксис: tan(x) Функц...
Пример 23
testdb=# SELECT tan(pi() / 8). testdb-# tan(O): tan | tan 0.414213562373095 | (1 row) trunc() Синтаксис: trunc(x) trunc(x.s) Функция trunc() вызывается с одним или с двумя ар...
Пример 24
testdb=# SELECT trunc(1.598) AS natural-truncation. testdb-# trunc(1.598. 1) AS one_decima1_point, testdb-# trunc(1.598, 8) AS extra_places: natural_truncation one_decimal_point | extra_...
Строковые функции
Строковые функции В PostgreSQL существует множество разнообразных строковых функций, предназначенных для форматирования, анализа и сравнения строк. К их числу относятся как функции стан...
Таблица 5 10 Строковые функции
Таблица 5.10. Строковые функции Функция Описание ascii(s) Возвращает ASCII-код символа, переданного в виде строковой переменной s btrim(s...
Пример 1
booktown=# SELECT asciitТ); ascii 84 (1 row) booktown=# SELECT DISTINCT ON (substr) booktown-# title. substrCtitle, 1, 1), booktown-# ascii(tltle) booktown-# FROM books bookt...
Пример 2
booktown=# SELECT btrimC whitespace example ') AS trim_blanks, booktown-# btr1m('123example 332', '123') AS trimjnumbers: trim_blanks | trim_numbers whitespace example example...
Пример 3
booktown=# SELECT charjength(title). title booktown-l FROM books Dooktown-# LIMIT 3: charjength | title 11 | The Shining 4 Dune 21 I 2001: A Space Odyssey (3 rows) chr()...
Примеры
booktowrHf SELECT chr(65), ascii('A'); chr ! ascii A | 65 (1 row) initcap() Синтаксис: initcap(s) Функция initcapO получает один аргумент s типа text, преобразует первые бук...
Пример 4
booktown=# SELECT initcapCa prospective book title'): initcap A Prospective Book Title (1 row) length() Синтаксис: length(s) Аналог функции SQL92 charj ength(). Получает один...
Пример 5
booktown=# SELECT length(title), title booktown-# FROM books booktown-# LIMIT 3; length title 11 | The Shining 4 I Dune 21 | 2001: A Space Odyssey (3 rows) Примечание 1Примечани...
Примеры
booktown=# SELECT * FROM books booktown-# WHERE title LIKE ('XRabbit1): id i title | authorjd subjectjd 1234 | The Velveteen Rabbit | 25041 | 3 (1 row) booktown=# SELECT * FROM boo...
Пример 6
booktown=# SELECT lower(title) booktown-# FROM books booktown-# LIMIT 3; lower tne shining dune 2001: a space odyssey lpad() Синтаксис: lpad(s. n) 1pacl(s. n. c) Фун...
Пример 7
booktown=# SELECT title. IpadCtitle, 12, AS dashed, booktown-# IpadCtitle. 12. '-+-') AS pius_dashed booktown-# FROM books LIMIT 4; title | dashed | plus_dashed _ The Shining | -The S...
Примеры
booktown=# SELECT ItrimC whitespace example'): Itrim whitespace example (1 row) booktown=# SELECT title. ItrimCtitle, 'TD2he ') booktown-# FROM books booktown-# LIMIT 4: title | It...
Пример 8
booktown=# SELECT title, positiorK'the' IN title) AS the_pos booktown-# FROM books booktown-# WHERE positionCthe1 IN title) != 0: title | the_pos The Cat in the Hat | 12 Bartho...
Пример 9
booktown=# SELECT repeat(lastjname. 2) booktown-l FROM authors booktown-# LIMIT 3; repeat DenhamDenham BourgeoisBourgeois BiancoBianco (3 rows) rpad() Синтаксис: rpad(s. n) rpad...
Пример 10
booktown=# SELECT rpad('whitespace example'. 30): rpad whitespace example (1 row) booktown=# SELECT title. rpacKtitle. 12, ' -') AS right_dashed. booktown-# rpad(title, 12, '-+-')...
Примеры
booktown=# SELECT rtrimC'whitespace example '); rtrim whitespace example (1 row) booktown=# SELECT title, rtrinKtitle, 'yes') booktown-# FROM books booktown-# LIMIT 4; title...
Пример 11
booktown=# SELECT title, strposdower(title), 'rabbit') booktown-l FROM books booktown-# WHERE strposdower(title), 'rabbit') != 0; title | strpos The Velveteen Rabbit | 15 (1 ro...
Пример 12
booktown=# SELECT title, substr(title, 15). substr(title. 5. 9) booktown-# FROM books booktown-# ORDER BY title DESC booktown-# LIMIT 3; title | substr | substr The Velveteen R...
Примеры
booktown=# SELECT title, substring(title FROM 15) booktown-# FROM books booktown-* ORDER BY title DESC booktown-# LIMIT 3; title | substring The Velveteen Rabbit | Rabbit The Te...
Пример 13
booktown=# SELECT to_ascii('Multibyte Source', 'LATIN1'); to_ascii Multibyte Source (1 row) translate() Синтаксис: translate(s. f. r) Функция transl ate() получает три аргум...
Пример 14
booktown=# SELECT translated am an example?', '?', '!'): translate I am an example! (1 row) В следующем примере все вхождения символа «i» заменяются символом &laqu...
Пример 15
booktown=# SELECT translate('This is a mistake.', 'is', 'was'); translate Thwa wa a mwatake. (1 row) В последнем примере все гласные буквы заменяются пустой строкой, то есть у...
Пример 16
booktown=# SELECT title. booktown-# translateCtitle, 'aeiouAEIOU', '') AS vowelless booktown-# FROM books booktown-f LIMIT 5; title | vowelless The Shining Th Shnng Dune I D...
Примеры
booktowrH1 SELECT isbn, trim(LEADING '0' FROM isbn) booktown-# FROM editions booktown-# LIMIT 2; isbn | Itrim 039480001X 39480001X 0451160916 451160916 (2 rows) booktown=# SELECT...
Пример 17
booktown=# SELECT title, upper(title) booktown-# FROM books booktown-# ORDER BY id ASC booktown-# LIMIT 3; title | upper The Tell-Tale Heart | THE TELL-TALE HEART Little Women j...
Функции для работы с датой и временем
Функции для работы с датой и временем В PostgreSQL поддерживаются как стандартные функции SQL current_date, current_time и current_timestamp, так и множество нестандартных функций. Функ...
Таблица 5 11 Функции для работы с датой и временем
Таблица 5.11. Функции для работы с датой и временем Функция Описание current date Возвращает текущую дату в виде значения типа date...
Пример 1
booktown=# SELECT current_date, booktown-# 'now'::date AS date; date date 2001-08-31 | 2001-08-31 (1 row) current_time Синтаксис: current_time Функция current_time вызывае...
Пример 2
booktown=# SELECT current_time, booktown-# 'now'::time AS time; time | time 11:36:52 | 11:36:52 (1 row) current_timestamp Синтаксис: current_timestamp Функция current_time...
Пример 3
booktown=# SELECT current_timestamp. booktown-# now() AS timestamp; timestamp | timestamp 2001-08-31 11:39:42-07 2001-08-31 11:39:42-07 (1 row) date_part() Синтаксис: date_pa...
Таблица 5 12 Компоненты типов timestamp и interval
Таблица 5.12. Компоненты типов timestamp и interval Компонент Описание century Год, разделенный на 100 (не совпадает с текущим веком!)...
Примеры
booktown=# SELECT date_part('minute'. booktown(# intervalC3 days 4 hours 12 minutes')): date_part 12 (1 row) booktown=# SELECT isbn, booktown-l date_part('year', publication)...
Пример 4
booktown=# SELECT date_trune('minute', now()); date trunc 2001-08-31 09:59:00-07 (1 row) booktown=# SELECT date_trunc( 'hour', now()); date trunc 2001-08-31 09:00:00-07 (1 row)...
Примеры
booktown=# SELECT extract(MINUTE FROM interval('3 days 12 minutes1)): datejpart 12 (1 row) booktown=# SELECT extractCMONTH FROM now()): date_part 8 (1 row) isfinite() С...
Пример 5
booktown=# SELECT isfinite('now'::timestamp) AS now_is_finite, booktown-# isfinite('infinity'::timestamp) AS Infinity, booktown-# isfiniteC'invalid'::timestamp) AS invalid; now_is...
Пример 6
booktown=# SELECT now(); now 2001-08-31 10:31:18-07 (1 row) timeofday() Синтаксис: timeofdayO Функция timeofday() вызывается без аргументов и возвращает текущие время и дату...
Пример 7
Dooktown=# SELECT timeofday(); timeofday Fn Aug 31 10:33:00.837338 2001 PDT (1 row)...
Функции преобразования типа
Функции преобразования типа Хотя PostgreSQL позволяет выполнять явные преобразования между основными типами данных, некоторые преобразования удобнее выполнять при помощи функций. В табл...
Таблица 5 13 Функции преобразования типов
Таблица 5.13. Функции преобразования типов Функция Описание t>1tfromint4(n) Преобразует число в битовую последовательность DlttO...
Пример 1
booKtown=# SELECT bitfronrint4(16385); bitfromint4 00000000000000000100000000000001 (1 row) bittoint4() Синтаксис: bittoint4(b) Функция bittoint4() фактически является обратн...
Пример 2
booktown=# SELECT bittoint4(B'101010'). booktown-# Mttoint4(bitfromint4(99)) AS inverse_example: bittoint4 inverse_example 42 | 99 (1 row) to_char() для чисел Синтаксис: to_c...
Таблица 5 14 Метасимволы форматирования чисел
Таблица 5.14. Метасимволы форматирования чисел Символ Описание 9 Цифра 0 Цифра или начальный/конечный ноль, если количество ци...
Примеры
booktown=# SELECT to_char(123456789. '999G999G999D99') AS formatted, booktown-# to_char(123456789. '999999999') AS justjrigits, booktown-f to_char(123456789, '00999999999') AS with_z...
Таблица 5 15 Метасимволы форматирования чисел
Таблица 5.15. Метасимволы форматирования чисел Символ Описание НН. НН12 Час (от 1 до 12) НН24 Час (от 0 до 23) M...
Примеры
booktown=# SELECT to_char(now(). 'HH:MI PM1) AS the_time; the_time 05:04 PM (1 row) booktown=# SELECT to_char(now(), 'Dy (Day), Mon (Month)') booktown-# AS abbreviations,...
Примеры
booktown=# SELECT to_number('$2,900.00', 'L9G999D99') booktown-# AS monetary: monetary 2900.00 (1 row) booktown=# SELECT tojiumber('123.456.789.00' . '999G999G999D99') booktown-#...
Пример 3
booktown=# SELECT timestamp('197825thJuly01:12am') booktown-# AS non_standard_timestamp, booktown-l to_fimestamp('197825July01:12am', booktown(# 'YYYYDDFMMonthHH12:MIam') booktown-# A...
Пример 4
booktown=# SELECT timestamp(date('now')) AS today_at_midnight, booktown-# timestamp(dateCnow'), booktownd time('now')) AS right_now; today_at_m1dnight | rightjiow 2001-09-01 00:00:...
Агрегатные функции
Агрегатные функции Агрегатными функциями называется особый класс функций, применяемых сразу к нескольким записям набора данных, но возвращающим одно значение. Обычно агрегатные функции...
Таблица 5 16 Агрегатные функции
Таблица 5.16. Агрегатные функции Функция Описание avg( выражение') Возвращает среднее арифметическое значений выражения для всех записей в...
Агрегатные выражения
Агрегатные выражения При вызове агрегатной функции передается агрегатное выражение, применяемое к записям, созданным командой SELECT. По своей структуре агрегатные выражения сходны с о...
Листинг 5 19 Использование агрегатных выражений
Листинг 5.19. Использование агрегатных выражений booktown=# SELECT count(location) AS setjocations, booktown-# count(ALL location) AS all_set_locations, booktown-# count(DISTINCT loca...
Примеры
booktown=# SELECT avg(cost) AS average_cost, booktown-# avg(retail) AS average_price, booktown-# avg(retail - cost) AS average_profit booktown-# FROM stock: average_cost | average_pri...
Примеры
booktown=# SELECT countC*) FROM editions; count 17 (1 row) booktown=# SELECT count(isbn). p.name booktown-# FROM editions JOIN publishers AS p (publisheMd) booktown-# USING (...
Примеры
booktown=# SELECT max(cost), max(retail) FROM stock; max max 36.00 I 46.95 (1 row) booktown=# SELECT max(retail), p.name booktown-# FROM (stock NATURAL JOIN editions) booktown-#...
Примеры
booktown=# SELECT min(cost). min(retail) FROM stock; min | min 16.00 16.95 (1 row) booktown=# SELECT min(retail), p.name booktown-# FROM (stock NATURAL JOIN editions) booktown-#...
Примеры
booktown=# SELECT stddev(retail) FROM stock; stddev 8.46 (1 row) booktown=# SELECT stddev(retail), p.name booktown-# FROM (stock NATURAL JOIN editions) booktown-# JOIN publisher...
Примеры
booktown=# SELECT sum(stock) FROM stock; sum "BOB" (1 row) booktown=# SELECT sum(stock). s.subject booktown-# FROM ((stock NATURAL JOIN editions) booktown(# JOIN books...
Операторы
Операторы В главе 3 операторы SQL определялись как лексемы, предназначенные для выполнения операций с константами и идентификаторами и возвращающие результаты этих операций. Некоторые к...
Правила использования операторов
Правила использования операторов Оператор работает с одним операндом или с двумя операндами. Большинство операторов работает с двумя операндами, между которыми ставится сам оператор (на...
Листинг 5 1 Правильное использование
Листинг 5.1. Правильное использование математического оператора booktown=# SELECT id 1 AS id_p1us_one. 1ast_name booktown-# FROM authors booktown-# ORDER BY id DESC LIMIT 5; id_plu...
Листинг 5 2 Неверное использование операторов
Листинг 5.2. Неверное использование операторов booktown=# SELECT id + lastjiame AS mistake booktown-# FROM authors: ERROR: Unable to identify an operator '+' for types 'int4' and '...
Строковые операторы
Строковые операторы В PostgreSQL существует обширный набор строковых операторов для выполнения различных действий, от простой конкатенации текста и сравнения строк до поиска по регулярн...
Таблица 5 1 Базовые строковые операторы
Таблица 5.1. Базовые строковые операторы Оператор Синтаксис Описание = 'строка!' = ' строка2' Возвращает true, если перв...
Листинг 5 3 Сравнение строк
Листинг 5.3. Сравнение строк booktown=# SELECT title FROM books booktown=# WHERE substrCtitle, 1, 1) < 'D1; title 2001: A Space Odyssey Bartholomew and the Oobleck (2 rows)...
Конкатенация
Конкатенация Оператор конкатенации (11) играет очень важную роль при форматировании выходных данных. Как и все операторы, он может использоваться в командах SQL всюду, где могут исполь...
Листинг 5 4 Конкатенация строк
Листинг 5.4. Конкатенация строк booktown=# SELECT 'The Title: ' | title || ', by ' | booktown-# first_name || ' ' II lastjiame AS bookjinfo booktown-# FROM books NATURAL JOIN authors AS a...
Операторы регулярных выражений
Операторы регулярных выражений Если обычного сравнения строк оказывается недостаточно, в PostgreSQL предусмотрены специальные операторы для поиска совпадений по регулярным выражениям....
Листинг 5 5 Поиск по регулярному выражению
Листинг 5.5. Поиск по регулярному выражению booktown=# SELECT first_name, last_name booktown-# FROM authors booktown-# WHERE firstjiame - "AT1; fi rstjiame lastjiame Ariel D...
Таблица 5 2 Операторы регулярных выражений
Таблица 5.2. Операторы регулярных выражений Оператор Синтаксис Описание - ' строка' ~ ' выражение' Возвращает true, если в строке...
Таблица 5 3 Метасимволы регулярных выражений
Таблица 5.3. Метасимволы регулярных выражений Символ Синтаксис Описание - ^выражение Соответствует началу строки $...
Листинг 5 6 Простой поиск соответствия
Листинг 5.6. Простой поиск соответствия booktown=# SELECT title FROM books booktown-# WHERE title - 'The'; title The Shining The Cat in the Hat The Velveteen Rabbit The Tell-Tal...
Листинг 5 7 Нетривиальный поиск соответствия
Листинг 5.7. Нетривиальный поиск соответствия booktown=f SELECT title FROM books booktown-# WHERE title -* IAThe.*(rabbit|heart)'; title The Velveteen Rabbit The Tell-Tale Heart...
Листинг 5 8 Сложный поиск соответствия
Листинг 5.8. Сложный поиск соответствия booktown=# SELECT title FROM books booktown-# WHERE title ~* 'rt.*[ri]t) | (ingJjune$)' : title The Shining Dune The Velveteen Rabbit...
Числовые операторы
Числовые операторы Числовые операторы PostgreSQL делятся на три категории. Математические операторы выполняют математическую операцию с одним или двумя операндами и возвращают значе...
Математические операторы
Математические операторы Математические операторы используются в целевых списках, в секции WHERE команды SELECT и вообще везде, где встречаются числовые данные. В табл. 5.4 перечислены...
Таблица 5 4 Математические операторы
Таблица 5.4. Математические операторы Оператор Синтаксис Описание + а + b Суммирование числовых величин а и b -...
Листинг 5 9 Использование математических операторов
Листинг 5.9. Использование математических операторов booktown=# SELECT isbn, booktown-# (retail / cost)::numeric(3, 2) - 1 AS margin booktown-# FROM stock booktowri-# ORDER BY...
Операторы сравнения
Операторы сравнения Операторы сравнения работают со значениями таких типов, как integer или text, но всегда возвращают результат типа boo"! ean. Они часто встречаются в секции WHE...
Таблица 5 5 Операторы сравнения
Таблица 5.5. Операторы сравнения Оператор Описание < Возвращает true, если левое значение меньше правого > Возвращает tr...
Листинг 5 10 Использование операторов сравнения
Листинг 5.10. Использование операторов сравнения booktown=# SELECT isbn, stock booktown-# FROM stock booktown-# WHERE retail <= 25 booktown-# AND stock != 0: isbn | stock...
Сравнение с использованием ключевых слов
Сравнение с использованием ключевых слов Ключевое слово BETWEEN (также иногда называемое оператором) позволяет проверить, входит ли значение в некоторый интервал. Например, команда SEL...
Листинг 5 11 Ключевое слово BETWEEN
Листинг 5.11. Ключевое слово BETWEEN booktown=# SELECT isbn FROM stock booktown-# WHERE cost BETWEEN 10 AND 17; isbn 0394800753 0441172717 0451457994 (3 rows) Аналогичного результ...
Листинг 5 12 Имитация ключевого
Листинг 5.12. Имитация ключевого слова BETWEEN при помощи операторов booktown=# SELECT isbn FROM stock booktown-# WHERE cost >= 10 AND cost <= 17; isbn 0394800753 0441172717 045...
Двоичные операторы
Двоичные операторы Двоичные операторы выполняют поразрядные операции с битовыми последовательностями или целыми числами, что обычно приводит к изменению их значений. Двоичные операторы...
Таблица 5 6 Двоичные операторы
Таблица 5.6. Двоичные операторы Оператор Синтаксис Описание & а & b Поразрядная конъюнкция двоичных представлений а и b (...
Листинг 5 13 Сдвиг битовых последовательностей
Листинг 5.13. Сдвиг битовых последовательностей booktown=# SELECT b'1000' » 2 AS "8 shifted right". booktown-# Mttoint4(b'1000' » 2) AS integer. booktown-# 8...
Логические операторы
Логические операторы Ключевые слова AND, OR и NOT являются логическими (булевыми) операторами PostgreSQL. Обычно они используются для операций с логическими условиями в командах SQL, ос...
Таблица 5 7 Операторы AND OR и NOT
Таблица 5.7. Операторы AND, OR и NOT а b aANDb aORb NOT a NOTb true true true true fal...
Листинг 5 14 Объединение условий
Листинг 5.14. Объединение условий с использованием логических операторов booktown=# SELECT isbn, cost, stock booktown-# FROM stock booktown-# WHERE cost > 30 booktown-# OR stock...
Операторы и NULL
Операторы и NULL Если таблица содержит значения NULL, можно воспользоваться специальными операторами сравнения, чтобы учесть поля NULL при выборке или игнорировать их. Конструкция IS NU...
Листинг 5 15 Проверка с использованием конструкции IS NULL
Листинг 5.15. Проверка с использованием конструкции IS NULL booktown=# SELECT lastjiame, firstjiame booktown-l FROM authors booktown-* WHERE firstjiame IS NULL; lastjiame fi rstjna...
Листинг 5 16 Сравнение со значением NULL
Листинг 5.16. Сравнение со значением NULL booktown=# SELECT lastjiame, firstjiame booktown-l FROM authors booktown-f WHERE firstjiame = NULL: lastjiame | fi rstjname Geisel |...
Листинг 5 17 Операторы и псевдозначение NULL
Листинг 5.17. Операторы и псевдозначение NULL booktown=# \pset null *nu11* Null display is booktown=# SELECT 5 > NULL; ?column? *null* (1 row) booktown=# SELECT NULL IS NU...
Приоритет операторов
Приоритет операторов При работе с большими выражениями, содержащими несколько операторов, полезно знать, в каком порядке выполняются операторы в PostgreSQL. Было бы неправильно полагать...
Листинг 5 18 Приоритет операторов
Листинг 5.18. Приоритет операторов booktown=# SELECT 60 + 12 * 5 AS "sixty plus twelve times five", booktown-# 12 + 60 * 5 AS "twelve plus sixty times five"; six...
Таблица 5 8 Приоритет операторов SQL
Таблица 5.8. Приоритет операторов SQL Оператор Синтаксис Описание значение: : тип Явное преобразование типа [ ]...
Функции
Функции Функция представляет собой идентификатор, используемый в PostgreSQL для выполнения программных операций в командах SQL. Функции всегда возвращают одно значение, применяемое в ко...








- Начало -    



Книжный магазин