кодесурса
«SQL

SQL MAX () с HAVING

script1adsense2code
script1adsense3code

MAX () функция с наличием

В этой статье мы обсудили, как SQL HAVING CLAUSE можно использовать вместе с SQL MAX (), чтобы найти максимальное значение столбца для каждой группы. SQL HAVING CLAUSE зарезервирован для статистической функции.

Использование предложения WHERE вместе с SQL MAX () также описано на этой странице.

SQL IN OPERATOR, который проверяет значение в наборе значений и извлекает строки из таблицы, также может использоваться с функцией MAX.

Пример :

Образец таблицы: клиент


Чтобы получить данные 'cust_city', 'cust_country' и максимальный размер «привели_амт» из таблицы клиентов при следующих условиях -

1. комбинация cust_country и cust_city должна создать группу

можно использовать следующий оператор SQL:

SELECT cust_city, cust_country, MAX(outstanding_amt) 
FROM customer 
GROUP BY cust_country, cust_city 
HAVING MAX(outstanding_amt)>10000;

Выход :

 CUST_CITY CUST_COUNTRY MAX (OUTSTANDING_AMT)
----------------------------------- --------------- ----- --------------------
Бангалор Индия 12000
Ченнаи Индия 11000
Лондон, Великобритания, 11000
Мумбаи Индия 12000
Торенто Канада 11000

Иллюстрированная презентация:

«SQL

SQL MAX () где

Образец таблицы: клиент


Чтобы получить данные «cust_country» и максимального значения «yal_amt »из таблицы« customer »с соблюдением следующих условий:

1. 'cust_country' должен быть отформатирован в группе,

2. оценка должна быть 2,

можно использовать следующий оператор SQL:

SELECT cust_country,MAX(outstanding_amt) 
FROM customer 
WHERE grade=2 
GROUP BY cust_country;

Выход :

 CUST_COUNTRY MAX (OUTSTANDING_AMT)
-------------------- --------------------
США 6000
Индия 12000
Австралия 5000
Канада 8000
Великобритания 6000

Иллюстрированная презентация:

«SQL

SQL MAX () с оператором IN

Образец таблицы: клиент


Чтобы получить данные для «открытие_amt» и максимум «выдающиеся_amt» из таблицы «клиент» при следующих условиях -

1. «Opening_amt» должен прийти в группу,

2. значение 'creation_amt' должно быть 3000, или 8000, или 10000,

можно использовать следующий оператор SQL:

 ВЫБЕРИТЬ Открытие_АМТ, МАКС (выдающийся_АМТ) 
ОТ клиента 
GROUP BY opens_amt 
Имея открытие_АМТ (3000,8000,10000);

Выход :

 OPENING_AMT MAX (OUTSTANDING_AMT)
----------- --------------------
      10000 11000
       3000 6000
       8000 12000

Иллюстрированная презентация:

«SQL

SQL MAX () с HAVING и IN

Пример таблицы: заказы


Чтобы получить данные «agent_code», количество агентов в виде «count (agent_code)» и максимальное значение ord_amount из таблицы «orders» при следующих условиях:

1. 'agent_code' должен быть отформатирован в группе,

2. максимальное значение ord_amount должно быть 500, 800 или 2000,

можно использовать следующий оператор SQL:

SELECT agent_code,COUNT(agent_code),MAX(ord_amount) 
FROM orders 
GROUP BY agent_code 
HAVING MAX(ord_amount) IN(500,800,2000);

Выход :

 AGENT_CODE COUNT (AGENT_CODE) MAX (ORD_AMOUNT)
---------- ----------------- ---------------
A007 2 2000
A009 1 500
A012 2 2000
A001 1 800

Примечание. Выводы указанного оператора SQL, показанного здесь, взяты с использованием Oracle Database 10g Express Edition.

Вот слайд-презентация всех агрегатных функций.

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code