반응형
php
또는 다른 언어로 해결할 수 있지만 더 많은 SQL을 배우고 싶습니다.
이 문제를 해결할 방법이 있습니까?
두 개의 테이블이 있습니다 (구조를 변경할 수 없음). 하나는 데이터가있는 content
이고 다른 하나는 추가 정보가있는 content_info
입니다. content.id = content_info.content_id
와 같은 방식으로 관련됩니다.
내가하고 싶은 일 : content_info
에 데이터 셋이 없지만 content
에 데이터 셋이 있다면 복사하고 싶습니다. 마지막에 같은 수의 두 테이블의 데이터 세트. 나는 그렇게 시도했지만 불행히도 작동하지 않습니다.
...
BEGIN
(SELECT id, ordering FROM content;)
cont:LOOP
@cid = SELECT content_id FROM content_info WHERE content_id = (id)
IF @cid != (id) THEN
INSERT INTO content_info SET content_id = (id), ordering = (ordering)
ITERATE cont;
END IF;
END LOOP cont;
END
..
누군가 아이디어가 있습니까, 아니면 결국 가능하지 않습니까? 미리 감사드립니다!
해결 방법
INSERT IGNORE
를 사용하여 새 행을 삽입 할 수 있지만 테이블에 중복 항목 오류를 일으킬 수있는 행이 이미있는 경우 아무 작업도 수행하지 않습니다.
INSERT IGNORE INTO jos_content_frontpage (content_id, ordering)
SELECT id, ordering FROM jos_content
참조 페이지 https://stackoverflow.com/questions/7410224
반응형
'MySql' 카테고리의 다른 글
MySQL PHP / MySQL 좋아요 버튼 (0) | 2020.09.29 |
---|---|
MySQL 기존 MySQL 데이터베이스에서 Visio ERD 생성 (0) | 2020.09.29 |
MySQL의 Distinct의 반대 (0) | 2020.09.29 |
MySQL phpMyAdmin의 MySQL 트리거 쿼리 (0) | 2020.09.29 |
MySQL phpMyAdmin의 MySQL 트리거 쿼리 (0) | 2020.09.29 |
댓글