동일한 테이블 데이터의 두 열을 기반으로 테이블에서 행을 삭제하는 방법은 무엇입니까?

newSqlz

속성 변경 내역이있는 테이블이 있습니다.

| id     | attr     | value  | version |
|--------|----------|--------|---------|
| UUID-1 | name     | chuck  | 1       |
| UUID-1 | password | morris | 1       |
| UUID-1 | name     | chack  | 0       |
| UUID-2 | name     | aron   | 2       |
| UUID-2 | name     | alan   | 1       |
| UUID-2 | name     | agor   | 0       |

이제 모든 'id'에 대한 오래된 데이터를 삭제해야합니다 (MAX (버전)이있는 행은 그대로 유지되어야 함).

| id     | attr     | value  | version |
|--------|----------|--------|---------|
| UUID-1 | name     | chuck  | 1       |
| UUID-1 | password | morris | 1       |
| UUID-2 | name     | aron   | 2       |

그래서 나는 이러한 구조로 이것을 얻을 수 있다고 결정했습니다.

DELETE
FROM
    table1 pch
WHERE
    EXISTS (
    SELECT
        id, MAX(version) AS maxVer
    FROM
        table1 pch2
    WHERE
        pch.id = pch2.id AND pch.version != maxVer
    GROUP BY
        id)

또는 이와 비슷한 것이지만 ... 오라클 SQL은 'where / having'절의 별칭과 함께 작동하지 않습니다.

이 일을 다른 방법으로 수행 할 수있는 옵션이 있습니까?

고든 리노 프

대신 상관 하위 쿼리를 사용하십시오 group by.

DELETE FROM table1 pch
WHERE pch.version < (SELECT MAX(version) AS maxVer
                     FROM table1 pch2
                     WHERE pch.id = pch2.id 
                    );

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

다른 두 테이블의 계산을 기반으로 한 테이블에서 데이터를 검색하는 방법은 무엇입니까?

분류에서Dev

한 테이블의 열 값이 MySQL을 사용하는 다른 테이블과 동일한 경우에만 두 테이블에서 데이터를 반환하는 방법은 무엇입니까?

분류에서Dev

두 번째 테이블의 값을 기반으로 한 테이블의 열을 업데이트하는 방법은 무엇입니까?

분류에서Dev

한 테이블에서 다른 테이블로 기존 테이블에 특정 열과 데이터 행을 삽입하는 방법은 무엇입니까?

분류에서Dev

a와 b로 동일한 테이블을 두 번 선택할 때 이메일에서 테이블 이름을 호출하는 방법은 무엇입니까?

분류에서Dev

Postgresql : 날짜로 제한된 테이블에서 행을 삭제하는 방법은 무엇입니까?

분류에서Dev

동일한 테이블 행에서 변수로 foreach 배열을 에코하는 방법은 무엇입니까?

분류에서Dev

동일한 기본 키를 사용하여 행을 삭제 한 후 테이블에 데이터를 삽입하는 방법은 무엇입니까?

분류에서Dev

C #의 데이터 테이블에서 단일 값을 동적으로 얻는 방법은 무엇입니까?

분류에서Dev

값을 기준으로 테이블 1에서 모두를 선택한 다음 해당 테이블의 값을 사용하여 동일한 테이블에서 선택하는 방법은 무엇입니까?

분류에서Dev

동일한 테이블의 다른 열 데이터를 기반으로 한 열을 채우는 방법은 무엇입니까?

분류에서Dev

.net의 다른 데이터 테이블을 기반으로 하나의 데이터 테이블 행을 제거하는 방법은 무엇입니까?

분류에서Dev

동일한 테이블의 다른 열과 행에서 데이터를 효율적으로 반환하는 방법은 무엇입니까?

분류에서Dev

동일한 테이블 행에서 두 개의 테이블 셀을 결합하는 방법은 무엇입니까?

분류에서Dev

다른 데이터베이스의 동일한 테이블이있는 테이블을 기반으로 데이터베이스의 테이블 레코드를 업데이트하는 방법은 무엇입니까?

분류에서Dev

다른 테이블의 모든 열과 동일한 데이터 유형으로 하나의 테이블을 만드는 방법은 무엇입니까?

분류에서Dev

한 열을 기반으로 다른 테이블에 열을 추가하는 방법은 무엇입니까?

분류에서Dev

시계열별로 한 데이터 테이블의 항목을 다른 데이터 테이블에 일치시키는 방법은 무엇입니까?

분류에서Dev

동일한 값을 가진 동일한 테이블의 2 행에서 테이블에서 열 이름을 얻는 방법은 무엇입니까?

분류에서Dev

MySQL 데이터베이스 값을 기반으로 채워진 html 테이블의 행을 삭제하는 방법은 무엇입니까?

분류에서Dev

동일한 테이블의 다른 열로 열을 업데이트하는 방법은 무엇입니까?

분류에서Dev

c # ItemArray를 사용하여 데이터 테이블에서 두 데이터 행과 열을 하나로 병합하는 방법은 무엇입니까?

분류에서Dev

여러 열의 데이터를 기반으로 두 파일을 병합하는 방법은 무엇입니까?

분류에서Dev

첫 번째 테이블의 데이터가 다른 경우 두 번째 테이블에서 단일 값을 얻는 방법은 무엇입니까?

분류에서Dev

테이블을 확인하고 동일한 테이블에서 일치하는 두 열의 값을 기반으로 tr 내용을 굵게 만듭니다.

분류에서Dev

테이블 X에 대한 쿼리 결과를 기반으로 테이블 Y의 행을 반환하는 방법은 무엇입니까?

분류에서Dev

SQL의 두 테이블에서 일치하지 않는 행을 얻는 방법은 무엇입니까?

분류에서Dev

부모 테이블을 기반으로 자식 테이블의 열 값을 자동 업데이트하는 방법은 무엇입니까?

분류에서Dev

matlab 테이블에서 0으로 만 행을 삭제하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    다른 두 테이블의 계산을 기반으로 한 테이블에서 데이터를 검색하는 방법은 무엇입니까?

  2. 2

    한 테이블의 열 값이 MySQL을 사용하는 다른 테이블과 동일한 경우에만 두 테이블에서 데이터를 반환하는 방법은 무엇입니까?

  3. 3

    두 번째 테이블의 값을 기반으로 한 테이블의 열을 업데이트하는 방법은 무엇입니까?

  4. 4

    한 테이블에서 다른 테이블로 기존 테이블에 특정 열과 데이터 행을 삽입하는 방법은 무엇입니까?

  5. 5

    a와 b로 동일한 테이블을 두 번 선택할 때 이메일에서 테이블 이름을 호출하는 방법은 무엇입니까?

  6. 6

    Postgresql : 날짜로 제한된 테이블에서 행을 삭제하는 방법은 무엇입니까?

  7. 7

    동일한 테이블 행에서 변수로 foreach 배열을 에코하는 방법은 무엇입니까?

  8. 8

    동일한 기본 키를 사용하여 행을 삭제 한 후 테이블에 데이터를 삽입하는 방법은 무엇입니까?

  9. 9

    C #의 데이터 테이블에서 단일 값을 동적으로 얻는 방법은 무엇입니까?

  10. 10

    값을 기준으로 테이블 1에서 모두를 선택한 다음 해당 테이블의 값을 사용하여 동일한 테이블에서 선택하는 방법은 무엇입니까?

  11. 11

    동일한 테이블의 다른 열 데이터를 기반으로 한 열을 채우는 방법은 무엇입니까?

  12. 12

    .net의 다른 데이터 테이블을 기반으로 하나의 데이터 테이블 행을 제거하는 방법은 무엇입니까?

  13. 13

    동일한 테이블의 다른 열과 행에서 데이터를 효율적으로 반환하는 방법은 무엇입니까?

  14. 14

    동일한 테이블 행에서 두 개의 테이블 셀을 결합하는 방법은 무엇입니까?

  15. 15

    다른 데이터베이스의 동일한 테이블이있는 테이블을 기반으로 데이터베이스의 테이블 레코드를 업데이트하는 방법은 무엇입니까?

  16. 16

    다른 테이블의 모든 열과 동일한 데이터 유형으로 하나의 테이블을 만드는 방법은 무엇입니까?

  17. 17

    한 열을 기반으로 다른 테이블에 열을 추가하는 방법은 무엇입니까?

  18. 18

    시계열별로 한 데이터 테이블의 항목을 다른 데이터 테이블에 일치시키는 방법은 무엇입니까?

  19. 19

    동일한 값을 가진 동일한 테이블의 2 행에서 테이블에서 열 이름을 얻는 방법은 무엇입니까?

  20. 20

    MySQL 데이터베이스 값을 기반으로 채워진 html 테이블의 행을 삭제하는 방법은 무엇입니까?

  21. 21

    동일한 테이블의 다른 열로 열을 업데이트하는 방법은 무엇입니까?

  22. 22

    c # ItemArray를 사용하여 데이터 테이블에서 두 데이터 행과 열을 하나로 병합하는 방법은 무엇입니까?

  23. 23

    여러 열의 데이터를 기반으로 두 파일을 병합하는 방법은 무엇입니까?

  24. 24

    첫 번째 테이블의 데이터가 다른 경우 두 번째 테이블에서 단일 값을 얻는 방법은 무엇입니까?

  25. 25

    테이블을 확인하고 동일한 테이블에서 일치하는 두 열의 값을 기반으로 tr 내용을 굵게 만듭니다.

  26. 26

    테이블 X에 대한 쿼리 결과를 기반으로 테이블 Y의 행을 반환하는 방법은 무엇입니까?

  27. 27

    SQL의 두 테이블에서 일치하지 않는 행을 얻는 방법은 무엇입니까?

  28. 28

    부모 테이블을 기반으로 자식 테이블의 열 값을 자동 업데이트하는 방법은 무엇입니까?

  29. 29

    matlab 테이블에서 0으로 만 행을 삭제하는 방법은 무엇입니까?

뜨겁다태그

보관