Mysql SQL查询-查找最大的数字
谁能帮帮我吗?我需要找到此查询,但无法将其显示为一个查询。我知道我写错了,但不知道如何改正。我需要它只显示预订时间最长的客户Mysql SQL查询-查找最大的数字,mysql,sql,sql-query-store,Mysql,Sql,Sql Query Store,谁能帮帮我吗?我需要找到此查询,但无法将其显示为一个查询。我知道我写错了,但不知道如何改正。我需要它只显示预订时间最长的客户 SELECT CUSTOMERS.CUSTOMER_ID, CUSTOMERS.CUSTOMER_NAME, ACCOMMODATION_BOOKINGS.CHECKIN_DATE, ACCOMMODATION_BOOKINGS.NIGHTS FROM CUSTOMERS, ACCOMMODATION_BOOKINGS WHERE CUSTOMERS
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;
这将为您提供所需的结果:
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
);
@P.Salmon,你是如何编辑它以这样的方式显示的?A take tour,read instructions B highlight code block和ctrl+k。谢谢你,它工作得很好,所以我不得不使用join语句?最好也将WHERE IN转换为join。你可以使用=运算符而不是IN,因为内部查询只返回一个值。@JitendraYadav将IN替换为=