mysql group by와 union all을 응용해 봅시다.
nameAB 테이블에 저장되는 레코드들은 아래와 같은 컬럼들을 가집니다. key는 하나도 없습니다. 이 문제를 생각해 봅시다. name 별로 A가 최대일 때의 B값, A가 최소일 때의 B값을 가져와서 그것의 차이를 구하는 게 목표입니다. 단, A와 B는 0이상 32768 미만의 정수입니다. 그리고, 임의의 str, a에 대해서, 이름이 name이고, A값이 a인 레코드는 많아봐야 1개만 있다고 가정하겠습니다. 예를 들어서, name이 'tEq'라고 해 보겠습니다. 그러면 nameAB에서 다음과 같은 레코드들이 나옵니다. A값이 최소인 레코드의 B값은 1710이 나옵니다. A값이 최대인 레코드의 B값은 1233이 나옵니다. 이 두 값의 차이는 1233 - 1710 = -477입니다. 이 값을 name별로 ..
코딩/Sql
2020. 10. 29. 02:43
최근댓글