2013-11-28 6 views
1

나는 100 개의 행을 가진 Mysql 테이블을 가지고 있으며, id는 기본 키입니다. null_ 값만 채워지지 않은 셀이있는 column_A가 있습니다. 이제 첫 번째 빈 셀에 값을 삽입하는 SQL 문이 필요합니다. 나는 다시 PHP 스크립트를 실행한다면, 그것은 다음 널 (null) 세포 등 뭔가 같은에 삽입 :Sql - 열의 첫 번째 빈 셀에만 값을 삽입하십시오.

$sql = "update my_TABLE, only affect the first COLUMN_A,row_i that is null 

설정 COLUMN_A, row_i = 20 ";

예 :

COLUMN_A 

6 
7 
null 
null 
null 
스크립트를 실행 한 후

,

COLUMN_A 

6 
7 
20 
null 
null 
+0

@Filipe이 해결 실바 – user3043277

답변

4

당신은 할 수 있습니다 :

UPDATE table1 
SET column_a = 20 
WHERE column_a IS NULL 
LIMIT 1; 

하지만 당신은 정말 정말 다음의 예처럼, 당신이 원하는 행을 얻을에 의해 순서의 일종이 있어야합니다

UPDATE table1 
SET column_a = 25 
WHERE column_a IS NULL 
ORDER BY id ASC 
LIMIT 1; 

sqlfiddle demo

+0

이것이 나의 마지막 질문이 될 것을 약속드립니다. 또한 PHP 내에서 (echo) ID 값과 COLUMN B 값을 첫 번째 COLUMN A Null 값 (즉, ID = 3; COLUMN B = 11)에 해당하는 sql 스크립트로 만들고 싶습니다. 어떻게하면됩니까? 미리 감사드립니다. – user3043277

+0

@ user3043277 당신은 더 나은 PHP에 유창하지 않기 때문에,이 질문에 대한 새로운 질문을 작성하고,이 의견은 많은 관심을 얻지 않을 수 있습니다, 그래서 당신은 대답을 찾을 수 없을 수도 있습니다 :) –

+0

원래 질문에 도움을 주셔서 감사합니다. 나는 그것을 다른 방식으로 틀 짓고 나중에 물어 보려고 노력할 것이다. – user3043277

-1
UPDATE table1 
SET column_a = 20 
WHERE column_a IS NULL 
LIMIT 1; 
+0

질문에 이미 답변되어 있습니다. 이전 게시물에 게시 된 답변을 복사해도 도움이되지 않습니다. – Shubhansh

관련 문제