2011-10-08 2 views
0
$value = mysql_result(mysql_query("SELECT the_field 
            FROM the_table 
            WHERE other_field = 'whatever'"), 0); 

이 방법을 사용하는 것이 "적합"한지는 알 수 없습니다. 그것은 엉성한 코딩인가? 그렇다면 하나의 단일 값을 얻는 더 좋은 방법이 있습니까?mysql에서 단일 값을 가져 오는 유효한 쿼리입니까?

+0

더 나은. 어떤 종류의 "적절한"당신을 말하는 겁니까? – wallyk

+0

나는 그것을 많이 보지 못했고 그것이 유효하다는 것을 확신하고 싶었다. – Oseer

답변

0

아무 문제가 없습니다. 또한 한 행만 되돌리려면 끝에 LIMIT 1을 추가하면됩니다.

2

난 그 게으른 코딩 - 당신은 오류를 확인하지 않을거야. 이로 인해 SQL에 오류가 있거나 데이터베이스가 다운 된 경우 오류 메시지가 혼동 될 수 있습니다. 오류를 명시 적으로 확인하고 프로그램을 폭발시키는 것보다 유용한 오류 메시지를주는 것이 더 좋습니다.

$result = mysql_query("SELECT the_field 
         FROM the_table 
         WHERE other_field = 'whatever'") 
if (!result) { 
    trigger_error(mysql_error($result)); 
} 
+0

어떻습니까? while 루프? – Oseer

1

일반적인 방법이다

$value = mysql_result(mysql_query("SELECT the_field 
            FROM the_table 
            WHERE other_field = 'whatever' LIMIT 1"), 0); 
관련 문제