Page 134 - 4636
        P. 134
     Три  останні  рядки  табл.  7.1  містять  операції  LIKE  і  REGEXP.  Це  форми  перевірки
        відповідності шаблону.
              Операція  LIKE  використовує  зіставлення  з  SQL-шаблоном.  Шаблони  можуть  містити
        звичайний текст, а також груповий символ % (знак відсотка), що означає відповідність з будь-
        якою кількістю символів, і _ (символ підкреслення), що означає відповідність з одним символом.
              Ключове  слово  REGEXP  служить  для  співставлення  з  регулярними  виразами.  У  MySQL
        використовуються регулярні вирази в стилі POSIX. Замість REGEXP можна застосовувати також
        ключове слово RLIKE, є його синонімом.
              Регулярні вирази POSIX також наявні і в РНР. Можна перевіряти кілька критеріїв відразу з
        використанням простих операцій і синтаксису зіставлення з шаблоном, після чого комбінувати їх
        у більш складні критерії за допомогою операцій AND і OR. Наприклад:
              select * from orders
              where customerid = 3 or customerid = 4;
              2 Відбірданих з декількох таблиць
              Часто для отримання відповіді від бази даних можуть знадобитися дані з декількох таблиць.
        Наприклад, якщо необхідно дізнатися, хто з клієнтів зробив замовлення протягом даного місяця,
        доведеться переглянути таблиці customers і orders. Якщо потрібно дізнатися, що конкретно вони
        замовили, доведеться переглянути і таблицюorder_iterns.
              Ці дані зберігаються в різних таблицях, оскільки відносяться до різних реальним об'єктам.
        Це один з принципів правильної структури бази даних.
              Для  отримання  інформації  подібного  роду  в  SQL  необхідно  виконати  операцію,  звану
        сполукою (join). З'єднання виконується для двох і більше таблиць відповідно до відносин між
        даними.  Якщо,  наприклад,  необхідно  подивитися,  які  замовлення  зробила  клієнтка  Саша
        Валентей, спочатку потрібно переглянути таблицю customers і знайти в ній ідентифікатор клієнта
        Саші (тобто customerid), а потім - таблицю orders на предмет замовлень, зроблених клієнтом з
        даним ідентифікатором customerid.
              Хоча  на перший  погляд операція  з'єднання  досить  проста,  насправді  це  один  з  найбільш
        складних  і тонких аспектів SQL. У MySQL реалізовано кілька різних типів з'єднання, кожен з
        яких призначений для певних цілей.
              7.3 Об'єднання таблиць
              1 Просте об'єднання двох таблиць
              Почнемо з пошуку замовлень, виконаних Славою Моргуновим:
              select orders.orderid, orders.amount, orders.date
              from customers, orders
              where customers.name = 'СлаваМоргунов'
              and customers.customerid = orders.customerid;
              Результат запиту будет таким:
                                Orderid           amount            Date
                                   1              69.98             2008-04-02
                                   4              24.99             2008-05-01
              Тут слід було б відзначити декілька моментів.
              По-перше,  для  відповіді  на  цей  запит  необхідна  інформація  з  двох  таблиць,  по-цьому
        потрібно вказати обидві.
              Вказавши дві таблиці, ви вказуєте тип з'єднання, можливо, навіть не знаючи його. Кома між
        назвами таблиць еквівалентна конструкцій INNERJOIN (внутрішнє з'єднання) або CROSSJOIN
                                                            131
     	
