2012-03-11 2 views
-5

MySQL/CodeIgniter에서 다음 명령문을 어떻게 작성합니까?MySQL에서 필드의 현재 값에 변수 추가하기

"food"의 현재 값을 $ sell 변수로 업데이트하십시오. 결과는 "음식"+ $ 판매의 가치가 될 것입니다.

편집이 : 좋아, 내가 마지막으로 액티브 레코드 클래스를 CodeIgniters를 사용

$food_up = "food +" . $sell; 
$this->db->set('food', $food_up, FALSE) 
     ->where('user_id', $uid); 
$this->db->update('market'); 

이 당신의 제안을 주셔서 감사합니다

을 알아 냈)

+1

과제 또는 시험 문제를 게시 할 때 나타 났으므로 지금까지 시도한 코드도 게시하십시오. 확고한 노력의 증거가 없다면 많은 도움을받지 못할 것입니다. 막히는 곳에서 도와 드리지만 일반적으로 숙제에 대한 완전한 답을 제공하지는 않습니다. –

+0

이게 당신이해야 할 일이 아닌가요? 아마도 [참조 설명서] (http://dev.mysql.com/doc/refman/5.6/en/sql-syntax.html)가 도움이 될 것입니다. –

+0

이것은 숙제가 아니며, CodeIgniter의 사용자 가이드, DB 클래스의 액티브 레코드 클래스에 대한 섹션을 읽어서 알아 냈습니다. – Miso

답변

1

당신의 솔루션은 update의 조합이 될 것입니다 및 MySQL에서 string literalsvariables을 사용하여 결과를 수정하십시오.

UPDATE <table_name> 
    SET col_name1={expr1|DEFAULT} [, col_name2={expr2|DEFAULT}] ... 
[WHERE where_condition] 

열을 현재 값 + 문자열 리터럴로 "설정"하는 방법을 알아야 할 것입니다. 귀하의 질문은 ... 당신은 단지 현재 값에 무언가를 추가하는 경우 실제로 변수를 필요 여부, 또는 경우에 알려줄 수있는 약간의 혼란과 하드 보일

0

update table1 set colFood = colFood + @variableName where foodId = @myFoodId

또는

update table1 set colFood = @variableName where foodId = @myFoodId을한다

관련 문제