sql문 where 절에 사용자함수를 사용할 수 있나요?

sql문 where 절에 사용자함수를 사용할 수 있나요?

QA

sql문 where 절에 사용자함수를 사용할 수 있나요?

본문


$result = sql_fetch("select ~~~~ from ~~~~ where mb_id = '$mb_id' and ".get_kor_date('makeup_day', $wal, $gab_ita)."='$ddate' ");

makeup_day 필드안에 있는 값을 function 함수를 적용해서 그 값이 $ddate값이랑 같으면 출력....

 

이렇게 넣을 수 있나요? 

돌려보니 에러나네요..ㅠㅠㅠ

이 질문에 댓글 쓰기 :

답변 4

PHP 함수가 있고, DB 함수가 있습니다.

 

질문의 경우 Query문에서 PHP 사용자 정의 함수의 결과값을 이용하는데

그 결과값에 문제가 있습니다.

 

get_kor_date() 함수의 결과값이 날짜 문자열로 추정되는데

그러면 Query문이 결국 아래처럼 정해지겠죠?

" select ~~~~ from ~~~~ where mb_id = '$mb_id아이디' and 함수반환날짜='$ddate날짜' "

 

이 중 함수반환날짜='$ddate날짜'를 보면,

필드값 비교도 아니고, 문자열 비교도 아니니 당연히 에러가 나겠죠?

'함수반환날짜'='$ddate날짜' 비교도 이상하고요.

* 오류가 뜨면 해당 오류도 남겨주면 좋습니다.

 

'날짜'='날짜' 비교도 이상하죠?

DB 함수를 이용해 필드에 저장된 값을 가공해 지정한 날짜와 비교하는 것이라면 몰라도요.

이하 생략합니다.


$ddate = get_kor_date($ddate, $wql, $gab_ita);
$sql = "
  select ~~~~ 
    from ~~~~ 
   where mb_id = '{$mb_id}'
     and makeup_day = '{$ddate}'
";
$result = sql_fetch($sql);
답변을 작성하시기 전에 로그인 해주세요.
전체 10,633
QA 내용 검색

회원로그인

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