首页 > 解决方案 > SQL 查询 - 查找最大的数字

问题描述

有人可以帮我吗?我需要找到这个查询,但我无法让它们显示为一个。我知道我写错了,但不知道如何改正。我需要它只显示预订时间最长的客户。

SELECT CUSTOMERS.CUSTOMER_ID, CUSTOMERS.CUSTOMER_NAME, 
       ACCOMMODATION_BOOKINGS.CHECKIN_DATE, ACCOMMODATION_BOOKINGS.NIGHTS
FROM   CUSTOMERS, ACCOMMODATION_BOOKINGS
WHERE  CUSTOMERS.CUSTOMER_ID = ACCOMMODATION_BOOKINGS.CUSTOMER_ID
SELECT MAX(Nights) AS NIGHTS
FROM ACCOMMODATION_BOOKINGS, CUSTOMERS;

标签: mysqlsqlsql-query-store

解决方案


这将为您提供所需的结果:

SELECT CUSTOMERS.CUSTOMER_ID, CUSTOMERS.CUSTOMER_NAME, 
       ACCOMMODATION_BOOKINGS.CHECKIN_DATE, ACCOMMODATION_BOOKINGS.NIGHTS
FROM CUSTOMERS
JOIN ACCOMMODATION_BOOKINGS
ON CUSTOMERS.CUSTOMER_ID = ACCOMMODATION_BOOKINGS.CUSTOMER_ID
WHERE ACCOMMODATION_BOOKINGS.NIGHTS = (
    SELECT MAX(NIGHTS) AS NIGHTS
    FROM ACCOMMODATION_BOOKINGS
);

推荐阅读