일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 첫주 및 마지막주 날짜 전체 포함
- TM128
- mysql
- Oracle
- update
- map api v3
- eclipse hotdeploy
- extundelete
- jquery selectbox change
- remote ip
- KOSA
- ajax async
- 서브쿼리
- ajax 동기방식처리
- 한국소프트웨어산업협회
- 접속ip
- http https
- 2개 테이블
- ant path pattern
- 폐업자에 대한 업종등의 정보내역
- mysql trigger
- 컴퓨터 드라이버
- 주소 좌표변환
- group by max
- String 배열
- String[]
- 아이폰키보드
- multipart
- checkbox 값처리
- partition by
- Today
- Total
하은양 믿음군 효실맘 호홍홍집s
Insert시 서브쿼리(Sub Query) 적용이 안되기 때문에 편법... 본문
INSERT INTO TB_MATCH_OPT (
MAT_ID,
MEM_ID,
OBJ_ID,
OPT_ID,
REGDATE
) VALUES (
(SELECT CONCAT('0',LPAD(CAST(SUBSTR(IFNULL(MAX(MAT_ID),'00000000'),2,7) AS UNSIGNED) + 1,7,0)) FROM TB_MATCH_OPT),
'B0000001',
'L0000002',
'O0000003',
now()
);
아래와 같이 고치면 됨 (단, 1개의 값만 적용할 때 사용가능함)....
1. 일반 INSERT
INSERT INTO TB_MATCH_OPT (
MAT_ID,
MEM_ID,
OBJ_ID,
OPT_ID,
REGDATE
)
SELECT (SELECT CONCAT('0',LPAD(CAST(SUBSTR(IFNULL(MAX(MAT_ID),'00000000'),2,7) AS UNSIGNED) + 1,7,0)) FROM TB_MATCH_OPT),
'B0000001',
'L0000002',
'O0000003',
now()
FROM DUAL;
2. 조건 INSERT(단, 1개의 값만 적용할 때 사용)
INSERT INTO TB_MATCH_OPT (
MAT_ID,
MEM_ID,
OBJ_ID,
OPT_ID,
REGDATE
)
SELECT (SELECT CONCAT('0',LPAD(CAST(SUBSTR(IFNULL(MAX(MAT_ID),'00000000'),2,7) AS UNSIGNED) + 1,7,0)) FROM TB_MATCH_OPT),
'B0000001',
'L0000002',
'O0000003',
now()
FROM TB_MATCH_OPT
WHERE MAT_ID = '00000012';
※ 주의 :
만약 조건에 "WHERE MEM_ID= 'B0000001'" 같이 여러개의 값을 데이터 복사식으로 넣을려면 중복에러가 발생하니 잘 생각해서
만들어야 함....ㅋㅋ
※ 프로그램이용한 처리(여러개를 불러와서 다시 처리...)...^^
// 넘어온 옵션 등록처리...
if(arr_optid != null && arr_optid.length > 0){
sSql = "DELETE FROM TB_MATCH_OPT WHERE OBJ_ID ='"+item_id+"' ";
iResult = dbhandle.dbUpdate(sSql);
for(int i = 0; i < arr_optid.length; i++){
sSql = "SELECT CONCAT('0',LPAD(CAST(SUBSTR(IFNULL(MAX(MAT_ID),'00000000'),2,7) AS UNSIGNED) + 1,7,0)) FROM TB_MATCH_OPT";
String maxMatchOptId = dbhandle.getSelectone(sSql);
String opt_list_val = arr_optid[i];
sSql = "INSERT INTO TB_MATCH_OPT ( " +
" MAT_ID , " +
" MEM_ID , " +
" OBJ_ID , " +
" OPT_ID , " +
" REGDATE , " +
" REG_ID , " +
" REG_IP " +
" ) VALUES ( " +
" '"+maxMatchOptId+"', " +
" '"+SS_MEMID+"' , " +
" '"+item_id+"' , " +
" '"+opt_list_val+"' , " +
" now()," +
" '"+sUSER_ID+"' ," +
" '"+sREMOTE_IP+"' " +
" ) ";
try{
// System.out.println(sSql);
iResult = dbhandle.dbUpdate(sSql);
}catch (Exception err){
System.out.println("TB_MATCH_OPT INSERT ERR : " + err.toString());
}
}
}
'가벼운 배움 > MySql' 카테고리의 다른 글
여러 테이블 left outer join 처리하기 (0) | 2016.12.26 |
---|---|
Mysql trigger 사용 예제 (0) | 2016.12.23 |
Oracle 시설예외시간을 MySql로 불러오기 Subquery (0) | 2016.12.21 |
Oracle 임의 키생성을 Mysql로 처리 (0) | 2016.12.21 |
2개 Table Join 해서 한 테이블의 값을 UPDATE (0) | 2016.04.07 |