我使用log explorer 在sql生成2个表,一个主表bak具体明细表bak_details现在要使用这2个表恢复数据,他的明细有2行,该如何使用?我写的查询:
update 用户信息 set 维护费到期日期 =
(select bak_details.val1 from bak_details,bak
where colname='upsize_ts' and bak_details.tid=bak.tid )
where 用户信息.upsize_ts in
(select convert(timestamp,bak_details.val2) from bak_details,bak
where colname='upsize_ts' and bak_details.tid=bak.tid )
将bak_details.val2从varchar转换为timestamp后所有行都转换为了0x3078303030303030,该怎么转换?这个语句有不少错误,赋值部分也不对,帮我改下,子查询嵌套不太会用。
另分很少了,那个老大能给点分……
update 用户信息 set 维护费到期日期 =
(select bak_details.val1 from bak_details,bak
where colname='upsize_ts' and bak_details.tid=bak.tid )
where 用户信息.upsize_ts in
(select convert(timestamp,bak_details.val2) from bak_details,bak
where colname='upsize_ts' and bak_details.tid=bak.tid )
将bak_details.val2从varchar转换为timestamp后所有行都转换为了0x3078303030303030,该怎么转换?这个语句有不少错误,赋值部分也不对,帮我改下,子查询嵌套不太会用。
另分很少了,那个老大能给点分……
(select a.val1 from (select * from bak_details where colname='维护费到期日期') a,
(select * from bak_details where colname='upsize_ts') b
where a.tid=b.tid and b.val=t.upsize_ts)
from 用户信息 t
(select a.val1 from (select * from bak_details where colname='维护费到期日期') a,
(select * from bak_details where colname='upsize_ts') b
where a.tid=b.tid and b.val2=t.upsize_ts)
from 用户信息 t
不允许从数据类型 varchar 到数据类型 timestamp 的隐式转换(表 'b',列 'val2')。请使用 CONVERT 函数来运行此查询。