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

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

QA

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

답변 2

본문

안녕하세요.

 

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);
 }
}

로 해결 하였습니다^^;

 

위에께 안되더라구요;; 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 9
© SIRSOFT
현재 페이지 제일 처음으로