sql更新語句若某欄位為空則更新此欄位否則不更新

2021-05-18 08:33:16 字數 2090 閱讀 8510

1樓:德陽小孩

-- mysql的寫法,其他資料庫同理,只有當前時間的引數不同

update test set endtime=now() where endtime is null;

2樓:

update test

set stoptime=getdate()where

(select count(*) from testwhere (id=(select max(id) from test)) and (stoptime is null or stoptime='')

)>0

sql語句問題,判斷update如果為空則不更新資料

3樓:匿名使用者

update test_v8_busy_revisit t

set (t.outbound_type,t.outbound_stat,t.

outbound_count,t.user_code,t.outbound_time)=

(select '0','11','1',t1.sales_person,t1.sales_time

from tbl_sp_sales_records t1

where t1.target_table='tbl_cust_data_table_0000000298'

and t1.sales_results = 'call_not_conn_sendmsg'

and t1.sales_time >= start_time

and t1.sales_time <= end_time

and t2.field_50028161 = t.contact_id

)where t.contact_id in(select t2.field_50028161 from tbl_cust_data_table_0000000298 t2)

;你的sql中,select語句查詢了t1,t2表,貌似兩表連線,可是條件都是在t1表上,t2和t1沒有關聯,t2卻和更新的表t有(t2.field_50028161 = t.contact_id

)這個關聯,奇怪

所以只把你的sql改了一下

4樓:匿名使用者

你update語句沒有where條件啊,就算不為空更新的也是所有的吧?

加上where條件試試

5樓:匿名使用者

每種資料庫的update都不太相同,你的資料庫是啥?

oracle sql語句 若某欄位為空則更新此欄位否則更新另一個欄位,只用一個sql語句

6樓:千鋒教育

oracle中條件更新用case when結構,舉例如下:用法如下:

update test set column1=(case testcond

when ' ' then '***'

else yyy end )

這樣就可以更具某個字

版段的值來更權新另外一個欄位了。

7樓:匿名使用者

update ss set bengtime=decode(bengtime ,null,sysdate-1,bengtime),endtime=decode(bengtime,null,endtime,sysdate) where id=***xx;

8樓:匿名使用者

通用sql:

update ss

set bengtime = case when bengtime is null then sysdate else bengtime end,

endtime = case when endtime is null then sysdate else endtime end

where id = ...

或者,簡單回點:答

update ss

set bengtime = nvl(bengtime,sysdate),

endtime =nvl(endtime,sysdate)where id = ...

sql 更新語句update 效率問題

這樣就是替換的了。update yearnew 引數為要變成的新日期年份 update yearold 引數為舊日期年份 declare update yearnew as int,update yearold as int set update yearnew 2008 設定要更改的新日期 set...

oracle中查詢某欄位不為空的sql語句怎麼寫

sql中判斷非空不能用等號,因為null在sql中被看作特殊符號,必須使用關鍵字 is和not select from a where info is not null select id,info from 表名 where info is not null select from a where...

SQL中如何更新某表中某欄位按另外欄位排序的前N條資料

update a set priority 0 where id in select top count id from a order by priority desc sql排序方式要根據另一個表的某個欄位排序怎麼實現?可以通過兩個表的關係,然後通過欄位關聯的形式排序。sql select t1...