쿼리는에서 : 는 뭔가요?

쿼리는에서 : 는 뭔가요?

QA

쿼리는에서 : 는 뭔가요?

본문

외주업체에서 만든 코드를 받았는데



$strSQL = " select * from mpr_media where agency=:agency ";


이런게 있네요. : 는 무슨 뜻인가요?

이 질문에 댓글 쓰기 :

답변 3

$strSQL = " select * from mpr_media where agency=:agency ";

$stmt = $pdo->prepare($strSQL);

$stmt->bindValue(":agench", $agency, PDO::PARAM_STR);

위에 올리신 글 밑에서 혹시 이런 비슷한 게 보이나 보세요. bindValue 말고 bindParam 이런 것도 있습니다.

요즘은 잘 안 써서 정확히 기억은 안 나는데 칼럼명에 저렇게 생긴 문자열 대입해서 하는 게 pdo에서 쓰는 방식이라서요.

mysql 에서 := 는 대입 연산자 입니다.

 

일반적으로 

update 문에서 = 을 쓰면 대입 연산자가 되죠

update 테이블 set a=1   <= a칼럼에 1을 대입하란 의미죠

 

select 에서 = 은 비교연산자 입니다

select * 테이블 where a=1 <= a칼럼이 1인지 비교하게 됩니다.

select 에서 대입연산자 라는 것은 지정해주기 위해서

select * 테이블 where a := a

이런식으로 처리해줍니다

위 쿼리 상단에 

set @agency = ""; 처럼 상수가 정의되어있을껀데

이값을 비교연산자가 아닌 대입연산자로 처리해주기 위해서 위처럼 사용합니다

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

회원로그인

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