선택 데이터를 사용하여 쿼리 업데이트

사용자 3009344

먼저 내 테이블을 살펴보십시오.

[user_id, row_id, row_value]-테이블 : users_data

함유량:

row_id 1 :

[1, 1, 1]
[2, 1, 2]
[3, 1, 2]
[4, 1, 2]

row_id 2 :

[1, 2, 1]
[2, 2, 1]
[3, 2, 1]
[4, 2, 1]

row_id 3 :

[2, 3, 5]
[2, 3, 5]
[2, 3, 5]

MySQL 언어를 자동으로 사용해야 만 3 단계를 수행 할 수 있는지 알아보고 싶습니다.

1 단계 : row_iduser_id = 1의 목록 가져 오기 (따라서 [1, 1, 1] 및 [1, 2, 1])

2 단계 : 해당 목록을 반복하여 1 단계에서 얻은 목록에있는 row_id에 대한 가장 인기있는 row_value가 무엇인지 확인합니다.

3 단계 : 2 단계의 결과를 반복하여 user_id = 1의 row_value를 가장 인기있는 row_value와 동일하게 만듭니다.

이제 내가 만든 쿼리입니다.

1 단계:

SELECT row_id FROM users_data WHERE user_id = 1;

해당 쿼리의 결과는 2 개 행입니다.

  • [1]

  • [2]

2 단계 : 이제 2 개의 행에서 2 개의 쿼리를 실행해야합니다 (1 단계의 데이터로 채워짐).

SELECT row_id, row_value FROM users_data WHERE row_id = 1 GROUP BY row_value ORDER BY COUNT(row_value) LIMIT 1;

SELECT row_id, row_value FROM users_data WHERE row_id = 2 GROUP BY row_value ORDER BY COUNT(row_value) LIMIT 1;

첫 번째 쿼리의 결과 :

[1, 2]

두 번째 쿼리의 결과 :

[2, 1]

3 단계 : 마지막으로 그 2 개 행에서 사용자 1 row_values를 업데이트하고 싶습니다. 따라서 다음과 같이 실행해야합니다.

UPDATE users_data SET row_value = 2 WHERE user_id = 1 AND row_id = 1;

UPDATE users_data SET row_value = 1 WHERE user_id = 1 AND row_id = 2;

따라서 이러한 단계가 자동으로 수행되기를 원합니다 (2 단계에서 가져온 3 단계 데이터, 1 단계에서 가져온 2 단계 데이터).하지만 만드는 방법을 모르겠습니다 (이제 프로그래밍 언어로 작성하거나 채울 수 있습니다. 메모장으로 쿼리).

다음은 SQLFiddle의 쿼리입니다. http://sqlfiddle.com/#!9/8d5594/14

폴 스피겔

당신이 무엇을하고 있는지 확실하지 않지만 이것은 그렇게하는 것 같습니다.

UPDATE users_data u_old
JOIN (
    SELECT DISTINCT u1.user_id, u2.row_id, u2.row_value
    FROM users_data u1
    JOIN users_data u2 USING(row_id)
    WHERE u1.user_id = 1
        AND u2.row_value = (
            SELECT u3.row_value 
            FROM users_data u3
            WHERE u3.row_id = u2.row_id
            GROUP BY u3.row_value
            ORDER BY COUNT(u3.row_value) DESC
            LIMIT 1
        )
) u_new USING (user_id, row_id)
SET u_old.row_value = u_new.row_value

http://sqlfiddle.com/#!9/116ab0/3

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

선택 쿼리를 사용하여 테이블 업데이트

분류에서Dev

Ajax를 사용하여 선택할 때 테이블의 쿼리에서 데이터 업데이트

분류에서Dev

SQL 선택 쿼리를 사용하여 데이터 피벗

분류에서Dev

MySQL-하위 쿼리 선택을 사용하여 열 값 업데이트

분류에서Dev

쿼리를 사용하여 데이터 테이블에서 100 개 행 선택

분류에서Dev

cron 작업을 사용하여 mysql에서 하나의 쿼리로 업데이트 및 선택

분류에서Dev

하위 쿼리를 사용하여 여러 테이블에서 데이터를 선택하기 어려움

분류에서Dev

동일한 테이블에서 테이블 데이터를 업데이트하기 위해 쿼리를 함께 업데이트 및 선택

분류에서Dev

Javascript를 사용하여 선택한 데이터 미리로드

분류에서Dev

mysql 쿼리, 선택 또는 업데이트시 성능 저하

분류에서Dev

선택 하위 쿼리에서 MYSQL 업데이트

분류에서Dev

조합 선택 쿼리 및 업데이트 쿼리를 사용하는 방법은 무엇입니까?

분류에서Dev

쿼리를 사용하여 데이터 세트에서 선택한 항목 요약

분류에서Dev

쉼표로 구분 된 행의 where 절 데이터를 사용하여 쿼리를 선택하는 방법

분류에서Dev

최근 업데이트 된 레코드를 선택하기위한 쿼리

분류에서Dev

mysql에서 조인 쿼리를 사용하여 데이터 업데이트

분류에서Dev

knex.js를 사용하면 선택 쿼리 결과로 기존 열이 업데이트됩니다.

분류에서Dev

선택 쿼리를 기반으로 쿼리 업데이트

분류에서Dev

선택 쿼리를 사용하여 콤보 상자를 공급할 때 데이터 유형 불일치

분류에서Dev

업데이트 된 데이터를 가져오고 다른 행 데이터도 선택하는 SQL 업데이트 트리거

분류에서Dev

SQL에서 선택 필드를 채우고 선택을 사용하여 데이터베이스 업데이트

분류에서Dev

행 수가 다른 두 개의 선택 쿼리를 사용하여 데이터 삽입

분류에서Dev

Oracle에서 조인 선택 쿼리를 사용하여 동적 데이터 생성

분류에서Dev

선택 쿼리를 변수에 저장하고 업데이트 및 삽입에 사용

분류에서Dev

대규모 mysql 데이터베이스를 사용하여 쿼리 UPDATE 개선

분류에서Dev

복잡한 쿼리를 사용하여 테이블 선택

분류에서Dev

히트 시퀀스를 선택하는 쿼리는 많은 양의 데이터를 사용합니다.

분류에서Dev

awk를 사용하여 유클리드 거리로 데이터 선택

분류에서Dev

키보드를 사용하여 마우스없이 트 리뷰에서 데이터를 선택하는 방법

Related 관련 기사

  1. 1

    선택 쿼리를 사용하여 테이블 업데이트

  2. 2

    Ajax를 사용하여 선택할 때 테이블의 쿼리에서 데이터 업데이트

  3. 3

    SQL 선택 쿼리를 사용하여 데이터 피벗

  4. 4

    MySQL-하위 쿼리 선택을 사용하여 열 값 업데이트

  5. 5

    쿼리를 사용하여 데이터 테이블에서 100 개 행 선택

  6. 6

    cron 작업을 사용하여 mysql에서 하나의 쿼리로 업데이트 및 선택

  7. 7

    하위 쿼리를 사용하여 여러 테이블에서 데이터를 선택하기 어려움

  8. 8

    동일한 테이블에서 테이블 데이터를 업데이트하기 위해 쿼리를 함께 업데이트 및 선택

  9. 9

    Javascript를 사용하여 선택한 데이터 미리로드

  10. 10

    mysql 쿼리, 선택 또는 업데이트시 성능 저하

  11. 11

    선택 하위 쿼리에서 MYSQL 업데이트

  12. 12

    조합 선택 쿼리 및 업데이트 쿼리를 사용하는 방법은 무엇입니까?

  13. 13

    쿼리를 사용하여 데이터 세트에서 선택한 항목 요약

  14. 14

    쉼표로 구분 된 행의 where 절 데이터를 사용하여 쿼리를 선택하는 방법

  15. 15

    최근 업데이트 된 레코드를 선택하기위한 쿼리

  16. 16

    mysql에서 조인 쿼리를 사용하여 데이터 업데이트

  17. 17

    knex.js를 사용하면 선택 쿼리 결과로 기존 열이 업데이트됩니다.

  18. 18

    선택 쿼리를 기반으로 쿼리 업데이트

  19. 19

    선택 쿼리를 사용하여 콤보 상자를 공급할 때 데이터 유형 불일치

  20. 20

    업데이트 된 데이터를 가져오고 다른 행 데이터도 선택하는 SQL 업데이트 트리거

  21. 21

    SQL에서 선택 필드를 채우고 선택을 사용하여 데이터베이스 업데이트

  22. 22

    행 수가 다른 두 개의 선택 쿼리를 사용하여 데이터 삽입

  23. 23

    Oracle에서 조인 선택 쿼리를 사용하여 동적 데이터 생성

  24. 24

    선택 쿼리를 변수에 저장하고 업데이트 및 삽입에 사용

  25. 25

    대규모 mysql 데이터베이스를 사용하여 쿼리 UPDATE 개선

  26. 26

    복잡한 쿼리를 사용하여 테이블 선택

  27. 27

    히트 시퀀스를 선택하는 쿼리는 많은 양의 데이터를 사용합니다.

  28. 28

    awk를 사용하여 유클리드 거리로 데이터 선택

  29. 29

    키보드를 사용하여 마우스없이 트 리뷰에서 데이터를 선택하는 방법

뜨겁다태그

보관