테이블 A의 생성 된 열을 생성하여 테이블 B의 열과 테이블 A의 행의 tableA_id를 합산 할 수 있습니까?하위 쿼리가 mysql에서 생성 된 열로?
나는 가족의 테이블과 아이들의 테이블을 가지고 있다고 가정합니다. 나는 각 가족을위한 아이들의 나이의 합을 원한다.
ALTER TABLE people.families
ADD COLUMN sumofages DECIMAL(10,2) GENERATED ALWAYS AS
(SELECT SUM(age) FROM people.children WHERE family_id = people.families.id) STORED;
ERROR 3102: Expression of generated column 'sumofages' contains a disallowed function.
나는 가상 유형으로 저장할 수 없습니다. 여기서 내가 뭘 잘못하고 있니?
ALTER TABLE people.families
ADD COLUMN sumofages DECIMAL(10,2) GENERATED ALWAYS AS
(SELECT SUM(age) FROM people.children WHERE family_id = people.families.id) VIRTUAL;
ERROR 3102: Expression of generated column 'sumofages' contains a disallowed function.
나는 어떤 기능을 허용하지 않는지 알 수 없습니다. SUM은 그럴 것 같지 않습니다. 아마 SELECT?
MySQL이 사용자가하려는 것을 지원하지 않는다고 생각합니다. 'UPDATE' 문에 만족하겠습니까? –
현재 하위 선택을 사용 중입니다. 실제로 데이터를 저장하고 싶지 않습니다. 엄청난 양의 하위 선택이 있습니다. MySQL에서 확실한 설명서를 찾을 수 없으므로 지원되지 않습니다. MariaDB에서 문서는 그것이 지원되지 않는다는 것을 암시하며, 생성 된 표현식은 현재 행 내에있는 데이터 만 포함 할 수 있습니다. 나는 단지 내가 뭔가를 놓치지 않았 음을 확신하고 싶었다. – user1955162