Advertisement
S_Madanska

WildCards

Oct 20th, 2020 (edited)
273
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 2.55 KB | None | 0 0
  1. /*LIKE е разширение на сравняването на низове (=) като са добавени възможности за задаване на маски в низа, който се търси.
  2. избира редове, съдържащи полета, които имат съответни части (низове) с дадени низове.
  3. _ замества само един символ
  4. % замества произволен брой символи.
  5. */
  6. --WildCards (Маски)
  7. --Всеки низ, съдържащ  'див'.
  8. SELECT *
  9.   FROM Customers
  10.  WHERE address LIKE '%див%'
  11.  
  12. -- Всеки низ, отговарящ на 'С_ф_я'
  13. SELECT *
  14.   FROM departments
  15.  WHERE city LIKE 'С_ф_я'
  16.  
  17. SELECT *
  18.   FROM departments
  19.  WHERE City LIKE '[а-о]%'
  20.  
  21. SELECT *
  22.   FROM departments
  23.  WHERE City LIKE '[ся]%'
  24.  
  25. SELECT *
  26.   FROM departments
  27.  WHERE NAME LIKE '[^а-ф]%'
  28.  
  29.  SELECT *
  30.   FROM departments
  31.  WHERE NAME LIKE '[а-ф]%'
  32.  
  33. /*още Примери:
  34. LIKE ‘[CK]ars[eo]n’ Всеки низ, започващ с C или K, последвано от ars, последвано от e или o и завършващ на n.
  35. LIKE ‘M[^c]%’ Всеки низ, започващ с M и нямащ втори знак c.
  36. ---------------------------------------------------------------------------------------------------------------------
  37. ANY (SOME) и ALL се използват подобно на използването на IN с подзаявки. Подзаявката връща множество от стойности.
  38. Пример: за множество (1,2,3) използваме оператора за сравнение >, то:
  39. > ALL (1,2,3) означава по-голямо от максималната стойност, в случая по-голямо от 3.
  40. > ANY (1,2,3) означава по-голямо от поне една стойност, в случая по-голямо от 1.
  41.  
  42. --Пример от базата:
  43. Операторът ANY връща TRUE, ако някоя от стойностите на подзаявката отговаря на условието. Следващият SQL израз връща TRUE и изброява наименованията на продукти, ако открие ANY (кои да е) записи в таблицата ORDER_ITEMS, където QUANTITY = 10:
  44. */
  45. SELECT NAME
  46. FROM PRODUCTS
  47. WHERE PRODUCT_ID = Any( SELECT PRODUCT_ID
  48.                          FROM ORDER_ITEMS
  49.                          WHERE QUANTITY = 20)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement