테스트 사이트 - 개발 중인 베타 버전입니다

MySql 에서 AND, IN 함수에 Array 값 대치하는 방법 채택완료

울라프 2년 전 조회 1,888

</strong>SELECT * FROM tablename WHERE column1 IN ('value1', 'value2'); <strong>
 

 

요 함수에서 Array ['aaa', 'bbb', 'ccc' ] 값을 IN ('value1', 'value2') 부분에 넣을려고 하는데 이쁘게 들어갈 수 있는 코드가 있을까요? 

explode, implode 써서 이리저리 해 봤는데 다 망함 ㅠ

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
2년 전

</p>

<p><?php

$arr = ['aaa', 'bbb', 'ccc'];

$instr = "'" . implode("','", $arr) . "'";

$sql = " SELECT * FROM tablename WHERE column1 IN ({$instr}); ";

echo $sql;</p>

<p>// SELECT * FROM tablename WHERE column1 IN ('aaa','bbb','ccc'); 

?></p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

울라프
2년 전
$new_arr = array_map('trim', explode(',', $str));

왜 안되나 봤더니 explode 하면서 빈칸이 하나 들어가 있어서 sql 에서 검색이 안 됐군요..
2일동안 15시간 소비... ㅠ ㅠ

댓글을 작성하려면 로그인이 필요합니다.

AI 한테 질문 하신내용 똑같이 해봤습니다.

 

 

 

 

AI 굿

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

울라프
2년 전
오메! 오메!!

댓글을 작성하려면 로그인이 필요합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인