因有两个表的编码不同,所以我在做关连时用如下语句(COLLATE database_default)可执行成功
select a.*
from dbo.Call_id as a , Call_Detail as b
where a.callid COLLATE database_default = b.callid COLLATE database_default
and calltime >= '2009-01-01' and calltime < '2009-02-01'
但现在写另一语句对以上call_id 和call_detail两个表进行union all
我写为如下但总提示出错
select a1,a2 from dbo.Call_id COLLATE database_default
union all
select a1,a2 from Call_Detail COLLATE database_default
请问上面这种union all要如何改呢? 谢谢!
SQL code
select a1,a2 COLLATE database_default from Call_id
union all
select a1,a2 COLLATE database_default from Call_Detail
SQL code
select a1,a2 COLLATE database_default from Call_id
union all
select a1,a2 COLLATE database_default from Call_Detail
引用 1 楼 jia_guijun 的回复:
SQL codeselect a1,a2 COLLATE database_default from Call_id
union all
select a1,a2 COLLATE database_default from Call_Detail
頂.
因有两个表的编码不同,所以我在做关连时用如下语句(COLLATE database_default)可执行成功
select a.*
from dbo.Call_id as a , Call_Detail as b
where a.callid COLLATE database_default = b.callid COLLATE database_default
and calltime >= '2009-01-01' and calltime < '2009-02-01'
但现在写另一语句对以上call_id 和call_detail两个表进行union all
我写为如下但总提示出错
select a1,a2 from dbo.Call_id COLLATE database_default
union all
select a1,a2 from Call_Detail COLLATE database_default
请问上面这种union all要如何改呢? 谢谢!
SQL code
select a1,a2 from dbo.Call_id
union all
select a1,a2 from Call_Detail
学习
一旦数据库建立如果不是用特别指定表里字段的COLLATATION是随数据库的,所以才叫DATABASE DEFAULT当跨库或不同collatation表时,必须每个字段改写,不能对表来改写因为表好像没有这个属性吧。
6楼说得对,我试过不能用表来conllatation
但对字段来改写要如何写呢? 谢谢!
搞定了,
field COLLATE database_default
自已搞定了,原来是
field COLLATE database_default
select a.*
from dbo.Call_id as a , Call_Detail as b
where a.callid COLLATE database_default = b.callid COLLATE database_default
and calltime >= '2009-01-01' and calltime < '2009-02-01'
但现在写另一语句对以上call_id 和call_detail两个表进行union all
我写为如下但总提示出错
select a1,a2 from dbo.Call_id COLLATE database_default
union all
select a1,a2 from Call_Detail COLLATE database_default
请问上面这种union all要如何改呢? 谢谢!
SQL code
select a1,a2 COLLATE database_default from Call_id
union all
select a1,a2 COLLATE database_default from Call_Detail
SQL code
select a1,a2 COLLATE database_default from Call_id
union all
select a1,a2 COLLATE database_default from Call_Detail
引用 1 楼 jia_guijun 的回复:
SQL codeselect a1,a2 COLLATE database_default from Call_id
union all
select a1,a2 COLLATE database_default from Call_Detail
頂.
因有两个表的编码不同,所以我在做关连时用如下语句(COLLATE database_default)可执行成功
select a.*
from dbo.Call_id as a , Call_Detail as b
where a.callid COLLATE database_default = b.callid COLLATE database_default
and calltime >= '2009-01-01' and calltime < '2009-02-01'
但现在写另一语句对以上call_id 和call_detail两个表进行union all
我写为如下但总提示出错
select a1,a2 from dbo.Call_id COLLATE database_default
union all
select a1,a2 from Call_Detail COLLATE database_default
请问上面这种union all要如何改呢? 谢谢!
SQL code
select a1,a2 from dbo.Call_id
union all
select a1,a2 from Call_Detail
学习
一旦数据库建立如果不是用特别指定表里字段的COLLATATION是随数据库的,所以才叫DATABASE DEFAULT当跨库或不同collatation表时,必须每个字段改写,不能对表来改写因为表好像没有这个属性吧。
6楼说得对,我试过不能用表来conllatation
但对字段来改写要如何写呢? 谢谢!
搞定了,
field COLLATE database_default
自已搞定了,原来是
field COLLATE database_default