안녕하세요. mysql delete 쿼리 문의 드립니다.

안녕하세요. mysql delete 쿼리 문의 드립니다.

QA

안녕하세요. mysql delete 쿼리 문의 드립니다.

본문

안녕하세요.

 

db에 들어가 있는 product 라는 테이블의 seq 행의 수가 5개가 넘어가면 최근 데이터 행 5개를 남기고 모두 삭제 하여라..

 

라는 쿼리를 만들고 있습니다.

 

delete from product order by seq limit 5

 

이거인데요.. 근데 이거는 지금 기준으로 뒤로 5개 지워라가 되더라구요;;;;

그래서 문의 드립니다.

 

not in 도 써보고 이것저것 써보는데 쿼리문 만드는데 어려움이 있습니다..

 

혹시 힌트 주셔도 감사하겠습니다.

 

 

이 질문에 댓글 쓰기 :

답변 2

자답합니다~

 


if($main_seq > 100 ) {
 $sql = "select seq from product order by seq desc";
 $rs=mysql_query($sql);
 $arr = array();
 $index = 1;
 while($row = mysql_fetch_array($rs)){
  $arr[$index]['seq'] = $row['seq'];
  $index++;
 }
 $first = count($arr);
 for($i=$first;$i>100;$i--){
  $seq=$arr[$i]['seq'];
  $sql= "delete from data where seq=".$seq;
  $retVal = mysql_query($sql);
  $sql= "delete from information where seq=".$seq;
  $retVal = mysql_query($sql);
  $sql= "delete from product where seq=".$seq;
  $retVal = mysql_query($sql);
 }
}

로 해결 하였습니다^^;

 

위에께 안되더라구요;; 

답변을 작성하시기 전에 로그인 해주세요.
전체 1,509
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT