Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Gt; FROM account. _> where account_id = (select max(account_id) FROM account);

Принципы группировки | Gt; FROM account | Агрегатные функции | Сравнение неявных и явных групп | Gt; FROM account | Использование выражений | Обработка значений Null | Группировка по нескольким столбцам | Gt; SUM(avail_balance) tot_balance _> FROM account | FROM account |


Читайте также:
  1. Answer the following questions using your own words but taking into account the
  2. FROM account
  3. Gt; FROM account
  4. Gt; FROM account
  5. Gt; FROM account
  6. Gt; FROM account

_> WHERE account_id = (SELECT MAX(account_id) FROM account);

 

+____________+____________+_________+_______________+


 

Типы подзапросов        
       
| account_id | product_cd | cust_id | avail_balance |
+____________+____________+_________+_______________+
|   | SBL | 13 | 50000.00 |

 

+____________+____________+_________+_______________+ 1 row in set (0.65 sec)

 

В этом примере подзапрос возвращает максимальное значение столбца account_id таблицы account. Затем содержащее выражение возвращает данные по этому счету. Если возникают какие_нибудь вопросы по по_ воду того, что делает подзапрос, можно выполнить его отдельно (без скобок) и посмотреть, что он возвращает. Вот подзапрос из предыду_ щего примера:

 

mysql> SELECT MAX(account_id) FROM account;

 

+_________________+ | MAX(account_id) | +_________________+

| 24 |

+_________________+

1 row in set (0.00 sec)

 

Итак, подзапрос возвращает одну строку и один столбец. Это позволя_ ет использовать его как одно из выражений в условии равенства (если бы подзапрос возвращал две или более строк, он мог бы сравниваться с чем_то, но не мог бы быть равным чему_то; более подробно об этом позже). В этом случае можно взять значение, возвращаемое подзапро_ сом, и подставить его в правую часть условия фильтрации в основном запросе:

 

mysql> SELECT account_id, product_cd, cust_id, avail_balance
_> FROM account a      
_> WHERE account_id = 24;    
+____________+____________+_________+_______________+
| account_id | product_cd | cust_id | avail_balance |
+____________+____________+_________+_______________+
|   | SBL | 13 | 50000.00 |

 

+____________+____________+_________+_______________+ 1 row in set (0.02 sec)

 

Здесь удобно использовать подзапрос, потому что он позволяет извле_ кать информацию о счете с наибольшим порядковым номером одним запросом. В противном случае пришлось бы с помощью одного запроса получать максимальный account_id и затем писать второй запрос для выбора необходимых данных из таблицы account. Как вы увидите, под_ запросы полезны и во многих других ситуациях и могут стать одним из самых мощных инструментов в вашем наборе SQL_инструментов.

 


Дата добавления: 2015-08-17; просмотров: 42 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Gt; FROM account| Типы подзапросов

mybiblioteka.su - 2015-2024 год. (0.005 сек.)