Изучаем sql


mysql> SELECT emp_id, fname, lname, start_date, title



Pdf көрінісі
бет57/261
Дата28.07.2022
өлшемі1,6 Mb.
#147825
1   ...   53   54   55   56   57   58   59   60   ...   261
Байланысты:
Изучаем SQL ( PDFDrive )

mysql> SELECT emp_id, fname, lname, start_date, title
> FROM employee
> WHERE title = 'Head Teller'
> OR start_date > '20020101';
++++++
| emp_id | fname | lname | start_date | title |
++++++
| 2 | Susan | Barker | 20020912 | Vice President |
| 4 | Susan | Hawthorne | 20020424 | Operations Manager |
| 5 | John | Gooding | 20031114 | Loan Manager |
| 6 | Helen | Fleming | 20040317 | Head Teller |
| 7 | Chris | Tucker | 20040915 | Teller |
| 8 | Sarah | Parker | 20021202 | Teller |
| 9 | Jane | Grossman | 20020503 | Teller |
| 10 | Paula | Roberts | 20020727 | Head Teller |
| 12 | Samantha | Jameson | 20030108 | Teller |
| 13 | John | Blake | 20000511 | Head Teller |
| 14 | Cindy | Mason | 20020809 | Teller |
| 15 | Frank | Portman | 20030401 | Teller |
| 16 | Theresa | Markham | 20010315 | Head Teller |
| 17 | Beth | Fowler | 20020629 | Teller |
| 18 | Rick | Tulman | 20021212 | Teller |
++++++
15 rows in set (0.00 sec)
Посмотрев на выходные данные, можно увидеть, что в результирую
щий набор включены все четыре старших операциониста (Head Tel
ler), а также все остальные сотрудники, приступившие к работе в бан
ке после 1 января 2002 года. Для 15 из 18 сотрудников из таблицы
employee
выполняется по крайней мере одно из двух условий. Таким
образом, чтобы строка попала в результирующий набор, когда условия
разделяются оператором 
and
, для нее должны выполняться 
все 
усло
вия; а при использовании оператора 
or
достаточно, чтобы выполня
лось только 
одно 
из условий.


Блоки group by и having
65
А как быть, если вам нужно задействовать в блоке 
where
оба оператора –
and
и 
or
? Рад, что спросили. Необходимо сгруппировать условия с по
мощью круглых скобок. Следующий запрос составлен так, что в ре
зультирующий набор должны попасть только те сотрудники, которые
являются старшими операционистами (Head Teller) и начали работать
в компании позже 1 января 2002 года, 
или 
простые операционисты (Tel
ler), начавшие работать после 1 января 2003 года:


Достарыңызбен бөлісу:
1   ...   53   54   55   56   57   58   59   60   ...   261




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет