我有一个供应商数据库,我想从中提取和转换某些信息。由于我不想因许可而更改原始数据库的结构,因此我想知道是否可以将供应商数据库中的视图放在一起,但将它们与其他一些复制和转换的数据一起存储在第二个 sql server 2008 数据库中。第二个数据库应该位于同一服务器上的第一个数据库旁边。
是否可能有这样的视图,如果是这样,在查询视图时我会失去很多性能吗?
我有三个语句要组合,但我找不到 SQL Server 2008 R2 的正确解决方案:
我需要将三列连接为一列,但根据最后一列的结果以三种不同的方式连接。第 3 列可以是空值、字母数字字母或以“-”开头,后跟数字。我尝试了以下方法:
if (select * from col3 where col3 is null)
select col1 + ' ' + col2
else if (select * from col3 where col3 like '-%'
select col1 + ' ' + col2 + col3
else if (select * from col3 where col3 not like '-%'
select col1 + ' ' + col2 + ' ' + col3
Run Code Online (Sandbox Code Playgroud)
分别地,它们像魅力一样工作。当尝试像上面的语句那样组合它们时,它们向我抛出一个错误,说我创建了一个布尔值而不是预期的条件。
我如何表述这是正确的?