SELECT
둘 이상의 값 중 최소 또는 최대가 가능합니까? 다음과 같은 것이 필요합니다.
SELECT MAX_VALUE(A.date0, B.date0) AS date0, MIN_VALUE(A.date1, B.date1) AS date1
FROM A, B
WHERE B.x = A.x
MySQL 만 사용하여이 작업을 수행 할 수 있습니까?
답변
그것을 달성하기 위해 사용 LEAST
하고 GREATEST
기능 할 수 있습니다.
SELECT
GREATEST(A.date0, B.date0) AS date0,
LEAST(A.date1, B.date1) AS date1
FROM A, B
WHERE B.x = A.x
둘 다 여기에 설명되어 있습니다 http://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html
답변
답변
NULL이 필드 값에있을 가능성이 있는지 확인하십시오.
SELECT LEAST(NULL,NOW());
과
SELECT GREATEST(NULL,NOW());
둘 다 null을 반환하는데, 이는 원하는 것이 아닐 수도 있습니다 (특히 GREATEST의 경우).
답변
이 시도:
SELECT GREATEST(A.date0, B.date0) AS `date0`,LEAST(A.date0, B.date0) AS `date1`
FROM A
JOIN B
ON A.id = B.role;