2010-09-15 2 views

ответ

8

Вы можете просмотреть то, что получает обновленный первый:

SELECT * FROM yourtable WHERE specificfield IS NULL 

Скрипт обновления просто:

UPDATE yourtable SET specificfield='$newvalue' WHERE specificfield IS NULL 

Где:
yourtable - имя таблицы, которую вы хотите с ячейками, которые вы хотите обновить.
specificfield - название поля, которое вы хотите обновить.
$ newvalue - новое значение для поля (в кавычках, так как это, вероятно, строка - мне нужно избежать этой строки).

примечание :: это работает только тогда, когда все поля собираются получить же значение (например specificfield = '00000'.)

Обновлено: (на пользователя комментариев)

SELECT * FROM yourtable 
WHERE (specificfield IS NULL OR specificfield=0) AND userid<1000 

UPDATE yourtable SET specificfield='$newvalue' 
WHERE (specificfield IS NULL OR specificfield=0) AND userid<1000 

Оператор where из вашего выбора аналогичен используемому в обновлении, поэтому вы можете настроить инструкцию where для необходимых условий.

+0

ok это работает bc все существующие поля равны нулю или 0 (я могу сделать это 2x) ... что, если я хочу ограничить доступ к определенному набору пользователей ... я просто добавляю "и WHERE userid <1000 «или что-то другое? – adam

+0

Почти - я обновил строки 'select' +' update' в приведенном выше коде - вы можете выполнить оба обновления с помощью одной команды ('OR') и включить дополнительные фильтры – Rudu

+0

попытка now- thx – adam

1
UPDATE `tablename` SET `fieldname` = 'ZIPCODE' WHERE `fieldname` is null; 
+2

Это не будет работать, если он не использует буквальную строку «нулевой». –

2

Следующие обновят поле во всех строках, где поле в настоящее время установлены в NULL:

UPDATE your_table 
SET your_field_name = 'ZIP CODE' 
WHERE your_field_name IS NULL; 

Просто подставит значение 'ZIP CODE' со строкой, что вам требуется.

1

UPDATE tablename SET fieldname = 'ZIPCODE' WHERE fieldname IS NULL

Смежные вопросы