Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*LIKE е разширение на сравняването на низове (=) като са добавени възможности за задаване на маски в низа, който се търси.
- избира редове, съдържащи полета, които имат съответни части (низове) с дадени низове.
- _ замества само един символ
- % замества произволен брой символи.
- */
- --WildCards (Маски)
- --Всеки низ, съдържащ 'див'.
- SELECT *
- FROM Customers
- WHERE address LIKE '%див%'
- -- Всеки низ, отговарящ на 'С_ф_я'
- SELECT *
- FROM departments
- WHERE city LIKE 'С_ф_я'
- SELECT *
- FROM departments
- WHERE City LIKE '[а-о]%'
- SELECT *
- FROM departments
- WHERE City LIKE '[ся]%'
- SELECT *
- FROM departments
- WHERE NAME LIKE '[^а-ф]%'
- SELECT *
- FROM departments
- WHERE NAME LIKE '[а-ф]%'
- /*още Примери:
- LIKE ‘[CK]ars[eo]n’ Всеки низ, започващ с C или K, последвано от ars, последвано от e или o и завършващ на n.
- LIKE ‘M[^c]%’ Всеки низ, започващ с M и нямащ втори знак c.
- ---------------------------------------------------------------------------------------------------------------------
- ANY (SOME) и ALL се използват подобно на използването на IN с подзаявки. Подзаявката връща множество от стойности.
- Пример: за множество (1,2,3) използваме оператора за сравнение >, то:
- > ALL (1,2,3) означава по-голямо от максималната стойност, в случая по-голямо от 3.
- > ANY (1,2,3) означава по-голямо от поне една стойност, в случая по-голямо от 1.
- --Пример от базата:
- Операторът ANY връща TRUE, ако някоя от стойностите на подзаявката отговаря на условието. Следващият SQL израз връща TRUE и изброява наименованията на продукти, ако открие ANY (кои да е) записи в таблицата ORDER_ITEMS, където QUANTITY = 10:
- */
- SELECT NAME
- FROM PRODUCTS
- WHERE PRODUCT_ID = Any( SELECT PRODUCT_ID
- FROM ORDER_ITEMS
- WHERE QUANTITY = 20)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement