2014-12-12 3 views
0

는 펄에서이 쿼리를 가지고 :왜 SQL 구문 오류입니까?

DBD :: mysql을 :: DB selectcol_arrayref 실패 :

my $pkg="%"; 
my $sql = "SELECT pid, CAST(pid as UNSIGNED) AS l FROM xmld ORDER BY l WHERE pkg LIKE ?"; 
my $files_ref = $dbh->selectcol_arrayref($sql, undef, $pkg); 

그것은과 충돌 당신은 당신의 SQL 구문에 오류가 있습니다; 나는 시간이 문장에서 찾고있다에서 라인 1에서 % '' 'WHERE PKG LIKE'근처 사용할 수있는 권리 구문에 대한 MySQL 서버 버전에 해당하는 매뉴얼 ...

을 확인, 다양한 시도 사물이지만 행운은 없습니다. 여분의 작은 따옴표는 어디에서 가져 오며 어떻게 제거합니까?

+3

'주문 by'는'where' 절 이후에 간다. –

답변

6

order bywhere 후 간다 :

SELECT pid, CAST(pid as UNSIGNED) AS l 
FROM xmld 
WHERE pkg LIKE ? 
ORDER BY l; 
관련 문제