1
create view [dbo].[view_name] as SELECT cast(Table1.col1 as bigint), Table1.col2, Table2.col3, cast(Table2.col4  as double)
FROM Table1 INNER JOIN
Table2 ON Table1.col1  = Table2.col1 

它显示错误“')'上的错误”

上述查询中的错误是什么。我使用的是 sql server 2008。

编辑

create view [dbo].[SP_AHU_data] as SELECT cast(TrendLog.TrendLogId as bigint) as TrendLogid , TrendLog.TrendLogGuid, TrendLogValue.LogTime,cast(TrendLogValue.LogValue as double) as LogValue 
FROM TrendLog INNER JOIN
TrendLogValue ON TrendLog.TrendLogId = TrendLogValue.TrendLogId
where TrendLog.TrendLogGuid in('{DCCFB6EA-C606-4168-A2B3-FC1059173DAF}',
'{B1D5B0E8-44E2-459B-BC53-1CCE00FE7E6E}',
'{7493BB54-DC88-4ECF-81DA-3AEBCC698808}',
'{9641A376-D03D-46B7-9780-20DAC28AA3D9}')

有两个表 TrendLog 和 TrendLogValue

Trendlog 有 2 列

  1. TrendLogId (PK,smallint notnull)
  2. Trendlogguid(唯一标识符不为空)

TrendLogValue 有 3 列

  1. TrendLogId (PK,smallint notnull)
  2. 对数值(浮动非空)
  3. 日志时间(日期时间不为空)
4

1 回答 1

2

尝试如下添加别名并更改doublefloat

create view [dbo].[view_name] as 
SELECT cast(Table1.col1 as bigint) as col1, 
       Table1.col2, Table2.col3, 
       cast(Table2.col4  as float) as col4
FROM Table1 INNER JOIN
Table2 ON Table1.col1  = Table2.col1 

Sql 小提琴演示

double 类型不是 sql server 的类型:MSDN

于 2013-07-17T09:28:00.120 回答