티스토리 뷰
질문 )
fileuploads 테이블의 요소는 아래와 같다.
id, tablename ,item, parentid, realname ,savename
위의 자료 중
tablename이 'sillcover'이고 item이 'image'인 것을 찾아서
picuploads 테이블의 요소는 아래와 같다.
num,tablename,item,parentnum,picname
tablename은 똑같이 넣어주고, item도 마찬가지,
parennum = parentid, picname은 savename으로 행을 추가하는 sql 코드는?
ChatGPT의 말:
ChatGPT
fileuploads 테이블에서 조건에 맞는 데이터를 picuploads 테이블로 변환하여 추가하는 SQL 코드는 다음과 같습니다:

SQL 코드
INSERT INTO picuploads (tablename, item, parentnum, picname)
SELECT tablename, item, parentid, savename
FROM fileuploads
WHERE tablename = 'sillcover' AND item = 'image';
코드 설명
INSERT INTO ... SELECT
picuploads 테이블의 열에 fileuploads 테이블에서 선택한 데이터를 삽입합니다.
열 매핑 (위와 같이 하면 열이 매핑된다. 따로 A = B 이런 형태로 하지 않아도 되니 너무 좋다.)
tablename → tablename
item → item
parentid → parentnum
savename → picname
조건 추가
fileuploads 테이블에서 tablename = 'sillcover'이고 item = 'image'인 행만 선택하여 삽입합니다.
주의 사항
데이터 타입
fileuploads와 picuploads 테이블의 데이터 타입이 일치해야 합니다. 예를 들어, parentid와 parentnum 모두 동일한 데이터 타입이어야 오류가 발생하지 않습니다.
타입이 일치하지 않으면 이상한 것이 들어있는 데이터가 발생한다.^^
중복 데이터 방지
중복 데이터 삽입을 방지하려면, 삽입 전에 picuploads 테이블에서 해당 데이터가 이미 존재하는지 확인하거나 고유키 제약 조건을 활용하세요: (이건 잘 사용할지 모르겠다.)
INSERT INTO picuploads (tablename, item, parentnum, picname)
SELECT tablename, item, parentid, savename
FROM fileuploads
WHERE tablename = 'sillcover' AND item = 'image'
ON DUPLICATE KEY UPDATE picname = VALUES(picname);
위 코드에서 ON DUPLICATE KEY UPDATE를 사용하면 중복 키가 발생할 경우 기존 데이터를 업데이트합니다.
테스트
실제로 삽입하기 전에 SELECT 쿼리로 조건에 맞는 데이터를 미리 확인하는 것이 좋습니다:
SELECT tablename, item, parentid, savename
FROM fileuploads
WHERE tablename = 'sillcover' AND item = 'image';
'IT tech Coding > mysql' 카테고리의 다른 글
기존 테이블의 컬럼에 각각 있는 자료를 새로운 테이블에 하나씩 생성하는 방법 연구 (0) | 2024.11.23 |
---|---|
SQL 테이블에서 최초저장시간, 수정시간을 자동으로 컬럼 만드는 코드는? (0) | 2024.11.21 |
[mysql] phpMyAdmin 에서 테이블의 구조를 볼 수 있는 방법은? (0) | 2024.08.26 |
테이블의 컬럼 중 발행금액, 입금액 등을 계산해서 미수금 컬럼값 sql문장으로 자동 넣어주기 (COALESCE) (0) | 2024.08.25 |
데이터베이스 조인하기 도전, table의 요소별 조인을 시도하다. (0) | 2024.06.20 |
- Total
- Today
- Yesterday
- 캐드자동작도
- 구글드라이브API
- #트리구조
- #데이터베이스설계
- ajax오류메시지
- 1. #웹개발 2. #로트번호 3. #성적서보기 4. #ajax 5. #jquery 6. #php 7. #프론트엔드 8. #백엔드 9. #부트스트랩 10. #웹기능구현
- 엑셀입력보호
- #계층형데이터
- 티스토리챌린지
- 코딩튜토리얼
- #동적ui
- General error: 2031
- 엑셀보호
- 오토핫키가이드
- coalesce는 한국어로 "코얼레스크" 또는 "코얼리스"
- #textarea #자동높이조절 #ux개선 #웹개발 #프론트엔드 #자바스크립트 #html팁 #웹디자인 #uiux #코딩팁
- 웹제작강의안2주차
- #데이터무결성
- 효율적코딩방법
- 엑셀셀보호
- isset을 적용해야 하는 이유
- #php에러해결 #php경고메시지 #nonwellformednumeric #php초보자팁 #웹개발에러 #프로그래밍디버깅 #php정규식 #코드디버깅팁 #웹개발문제해결 #php숫자형변환
- #tuigrid #자바스크립트그리드 #행삽입 #행삭제 #웹개발팁 #프론트엔드개발 #javascriptgrid #데이터테이블 #ui개선 #그리드커스터마이징
- #웹개발
- 오블완
- 도면자동생성
- #카테고리트리
- json파일형태보기
- json파일편하게보는법
- Bootstrap 5
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |