반응형
그룹화 할 때 테이블에서 가장 긴 '문자열'을 선택하는 방법
예:
SELECT partnumber, manufacturer, condition, SUM(qty), AVG(price), description FROM parts
WHERE [something]
GROUP BY partnumber, manufacturer, condition
비어있는 설명이 몇 개 있고 부품 번호, 제조업체, 조건 값이 많을 수 있으며 그룹에서 사용 가능한 첫 번째 설명을 사용하는 것 같습니다. 사용 가능한 가장 긴 설명을 받고 싶습니다.
나는 이것을 시도했다 :
MAX(LENGTH(description))
그러나 그것은 문자열의 문자 수를 반환합니다. 내가 MySQL에서하려는 일을 할 수 있습니까?
가장 큰 것을 얻기 위해 ORDER BY LENGTH(description) DESC
사용 하십시오 LIMIT 1
.
ORDER BY LENGTH(description) DESC LIMIT 1
가장 긴 결과에서 가장 짧은 결과로 정렬하고 첫 번째 결과 (가장 긴)를 제공합니다.
SELECT partnumber, manufacturer, `condition`, SUM(qty), AVG(price), description
FROM parts
WHERE [something] AND LENGTH(description) = (
SELECT MAX(LENGTH(description))
FROM parts AS p
WHERE p.partnumber = parts.partnumber
AND p.manufacturer = parts.manufacturer
AND p.condition = parts.condition
)
GROUP BY partnumber, manufacturer, `condition`
내 질문에 답한 것 같습니다 .MAX (설명)가 잘 작동하는 것 같습니다.
MAX (LENGTH (description))는 Description 열에서 가장 긴 값의 길이를 반환합니다.
반응형
'Nice programing' 카테고리의 다른 글
Looping through localStorage in HTML5 and JavaScript (0) | 2020.10.11 |
---|---|
JS : 날짜가 1 시간 이내인지 확인하세요? (0) | 2020.10.11 |
후행 반환 유형 구문 스타일이 새로운 C ++ 11 프로그램의 기본값이되어야합니까? (0) | 2020.10.11 |
jQuery : 사용자 정의 속성이있는 모든 요소 선택 (0) | 2020.10.11 |
node.js 및 express를 사용하여 이미지를 업로드, 표시 및 저장하는 방법 (0) | 2020.10.11 |