2012-04-26 3 views
3

내 MySQL의 쿼리를 작성하기 위해 노력하고있어,하지만 난 이것에 붙어있어 - 내가 SQL 데이터베이스에 내 PHP에서 여러 쿼리가 있습니다SET의 @var : TABLE_NAME FROM = SELECT *는 : 그것은 가능

SET @var := SELECT MAX(first_column) 
    FROM table; 

SELECT @var, 
    table.second_column 
FROM table; 

그러나 SQL 오류를 반환합니다. phpmyadmin에서 사용할 때 제대로 작동합니다. 나는 인터넷 검색을했고 사람들은 "SET @var = MySQL 쿼리"를 스토어드 프로 시저에서만 사용하는 것을 보았다. 내가 원하는대로 사용할 수 있습니까?

+0

누가 당신에게 에러를 주 었습니까? 어쩌면 PHP는 두 개의 쿼리를 실행할 수 없습니까? –

+0

[mysqli 여러 개의 쿼리 - 가능한 변수를 생성하는 부울 오류/이걸 건너 뛰는 방법?] (http://stackoverflow.com/questions/1227022/mysqli-multiple-queries-set-variable-produces-boolean-error- how-to-skip-this) – mellamokb

+0

SQL 오류의 텍스트가 무엇인지 알면 좋을 것입니다. –

답변

6

쿼리를 여러 번 실행하는 경우 (즉, 쿼리에 ;이있는 경우) 두 개의 별도 쿼리로 실행하거나 mysqli_multi_query과 같은 명령을 사용해야합니다. mysql_query 명령은 한 번에 하나의 쿼리 만 실행할 수 있습니다.

mysql_query('SET @VAR := SELECT MAX(first_column) FROM TABLE'); 
mysql_query('SELECT @var, table.second_column FROM table'); 

this related question도 참조하십시오.

+0

고맙습니다. 단 하나의 쿼리 만있을 수 있다는 것을 알았습니다. 별도의 쿼리보다 약간 빠르다고 생각하기 때문에 여러 쿼리를 만들려고했습니다. – suricactus

1
SELECT MAX(first_column) INTO @var FROM table; 
SELECT @var,table.second_column FROM table;