반응형
내 테이블 simple_pack_data code>의
Time_Stamp
필드를 업데이트하여 temp_data code> 테이블에서 비슷한 제목의 필드 값과 일치 시키려고합니다. 각 테이블에는
Test_Number
및 Time_Marker
라는 필드가 있으며,이 필드를 사용하여 테이블을 INNER JOIN
합니다. Time_Marker
는 읽기 횟수와 같습니다. 여기서 Time_Stamp
는 테스트 시작부터의 실제 시간입니다.
Time_Stamp
한 번에 하나씩 테스트를 업데이트하고 싶습니다. 그래서 제가 시도한 코드는 다음과 같습니다.
UPDATE simple_pack_data s
INNER JOIN (
SELECT *
FROM temp_data t
WHERE t.Test = "3"
) AS tmp
ON s.Test_Number = tmp.Test_Number AND s.Time_Marker = tmp.Time_Marker
SET s.Time_Stamp = tmp.Time_Stamp
WHERE s.Test_Number = "3";
이것을 실행하면 50 초 이상 걸리고 1205 오류가 발생합니다. 유사한 구조의 select 문을 실행하면 :
SELECT *
FROM simple_pack_data s
INNER JOIN (
SELECT *
FROM temp_data t
WHERE t.Test = "3"
) AS tmp
ON s.Test_Number = tmp.Test AND s.Time_Marker = tmp.Time_Marker
WHERE s.Test_Number = "3";
1 초도 채 걸리지 않으며 조인이 잘 작동한다는 것을 알고 있습니다. 업데이트가 정말 그렇게 오래 걸리나요? 그렇다면 시간 초과 값을 변경하여 통과 할 수있는 방법이 있습니까?
해결 방법
MySQL에는 이러한 작은 문제가 많이 있습니다. 마치 Access에서 작업하는 것과 같습니다. 프로그램이 잘못된 작업을 수행하고 오류를 발생시키지 않는 시간의 절반이 걸립니다.
참조 페이지 https://stackoverflow.com/questions/19458960
반응형
'MySql' 카테고리의 다른 글
MySQL How to add auto-increment to column in mysql database using phpmyadmin? (0) | 2020.12.21 |
---|---|
MySQL은 두 개 이상의 주어진 값 중에서 최소 / 최대를 선택합니다. (0) | 2020.12.21 |
MySQL MM / DD / YYYY 형식의 날짜를 MySQL 날짜로 변환 (0) | 2020.12.21 |
MySQL 1부터 시작하지 않는 자동 증가 (0) | 2020.12.20 |
MySQL Snow Leopard에 mysql gem 설치 문제 : 초기화되지 않은 상수 MysqlCompat :: MysqlRes (0) | 2020.12.20 |
댓글