Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Używanie dwóch wartości zagregowanych z podzapytania SELECT w jednym zewnętrznym zapytaniu SELECT

Możesz połączyć 2 podzapytania w 1:

SELECT MAX(c.cust_id) AS max_nh_cust_id,
       MAX(a.avail_balance) AS max_nh_avail_balance 
FROM account a INNER JOIN customer c 
ON a.cust_id = c.cust_id 
WHERE c.state = 'NH'

i dołącz do niego w ten sposób:

SELECT a.cust_id
FROM account a 
INNER JOIN customer c ON a.cust_id = c.cust_id
INNER JOIN (
  SELECT MAX(c.cust_id) AS max_nh_cust_id,
         MAX(a.avail_balance) AS max_nh_avail_balance 
  FROM account a INNER JOIN customer c 
  ON a.cust_id = c.cust_id 
  WHERE c.state = 'NH'
) t ON c.cust_id > t.max_nh_cust_id AND a.avail_balance > t.max_nh_avail_balance
WHERE c.state = 'MA'

Zobacz demo .
Wyniki:

> | cust_id |
> | ------: |
> |      13 |



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Projekt bazy reguł cenowych dla systemu rezerwacji hotelowych

  2. MySQL nie używa indeksu podczas sprawdzania =1 , ale używa go z =0

  3. Wstawianie do tabeli mysql i nadpisywanie wszelkich bieżących danych

  4. wstawianie danych do bazy mysql za pomocą php

  5. Jak wybrać najnowszy wpis w mysql?