편집: 수식은 "값" 열, 즉 카테고리를 기준으로 user_id가 가장 낮은 "값" 열이어야 합니다.
범주 "A"에 대한 가장 낮은 "user_id"의 "값" 열이 0.01이므로 행 2는 0.04가 됩니다.
죄송합니다.
테이블에서 모든 내용을 검색하고 다른 열을 기반으로 한 정보가 포함된 수식과 관련된 다른 열을 추가하고 싶습니다. 원본 형식은 다음과 같습니다.
카테고리 | 사용자_ID | 가치 |
---|---|---|
하나 | 1 | 0.01 |
하나 | 2 | 0.05 |
비 | 4 | 0.34 |
비 | 7 | 0.27 |
새 열은 각 행의 "값" 열에서 "범주" 를 뺀 최소값 "user_id"여야 합니다. 따라서 두 번째 행의 경우 범주가 "A"이고 "A"의 가장 낮은 "user_id"가 1이므로 (0.05 - 1)이 됩니다.
더 많은 행과 열이 있습니다. 이는 단지 예일 뿐입니다.
어떤 공식을 사용해야 하나요?
이것은 올바른 공식 없이 새 열을 만들 수 있다는 것을 보여주기 위해 지금까지 가지고 있는 것입니다.
으아악이것은 분명히 새 열을 제공하지만 0에 있습니다(자기 자신을 빼기 때문입니다).
올바른 공식은 무엇인가요?
건축은 다음과 같습니다:
CREATE TABLE new_table AS (select * FROM table_1); ALTER TABLE new_table ADD COLUMN `new_column` DECIMAL(3,2) GENERATED ALWAYS AS (table_1.value-table_1.value) STORED; select * from new_table;
mysql 5.7에서는 목표를 달성하기 위해 하위 쿼리를 사용할 수 있으며 보기는 새 테이블보다 나은 것 같지만 선택 사항이 동일하므로 선택할 수 있습니다
db바이올린 여기 p>
으아악
이것은 window 함수를 사용합니다. 즉, 2018년 현재 MySQL 버전인 MySQL 8.0이 필요합니다.
댓글에 답하기: 카테고리에서 가장 낮은 user_id의
으아악value
열을 사용하세요: