2013-05-17 2 views
0

У меня есть две колонки в моей таблице базы данных. Я хочу обновить оба столбца в одном запросе, но с двумя разными условиями для каждого столбца. как достичь этого .. ?? Пожалуйста, помогите.Как обновить два столбца с двумя разными условиями для каждого столбца в базе данных mysql

Спасибо заранее.

Я использую базу данных mysql.

+0

вот мой код: mysql_query ("UPDATE импорта SET customer_name = 'N/A' WHERE customer_name знак равно mysql_query ("UPDATE import SET city = 'N/A' WHERE city = ''"); Я хочу объединить эти два вопроса –

+0

Вы имеете в виду два условия, как в Col1 = blah AND Col2 = blah Или вы хотите обновить все строки, где col1 = blah ИЛИ col2 = blah? – SubSevn

+0

Какое состояние вы хотите поставить? – Dhwani

ответ

6
UPDATE import 
SET customer_name = case when customer_name = '' 
         then 'N/A' 
         else customer_name 
        end, 
    city = case when city = '' 
       then 'N/A' 
       else city 
      end 
+0

Это умный, мне нравится. – SubSevn

+0

+1 для ваших быстрых ans than me – Gautam3164

+0

Большое спасибо juergen d. Это сработало. –

0

Это не совсем понятно, что вы хотите сделать, но как насчет:

обновление ...... установлен column1 = если (condition_column1 = 1, 'some_value', column1), column2 = если (condition_column2 = 2, 'other_value', column2)

это будет работать так же, как:

обновление ...... набор column1 = 'some_value' где condition_column1 = 1

обновление ...... набор column2 = 'other_value' где condition_column2 = 2

1

Попробуйте как

UPDATE import SET 
     customer_name 
     CASE 
      WHEN customer_name= '' 
       THEN 'N/A' 
      ELSE custore_name 
     END, 
     city 
      CASE 
      WHEN city='' 
       THEN 'N/A' 
      ELSE city 
     END 
+0

@ Roshan это моя работа ..? – Gautam3164

+0

Спасибо, много ребята .. задача выполнена успешно –

+0

Рад помочь вам – Gautam3164