Jul*_*aga 0 sql t-sql sql-server
我想创建一个查询,在一些变量定义的时间范围内计算一些指标,但我不确定是否可以按我想要的方式使用变量.
我收到以下错误:
消息137,级别15,状态2,行7
必须声明标量变量"@vDiai".
该列TPO_CFecha
是类型int
.
我不知道我做错了什么:
DECLARE @vDiai INT;
DECLARE @vDiaf INT;
SET @vDiai = 20171030;
SET @vDiaf = 20181030;
USE DBDMS
GO
SELECT
CAST(100 * Baja / (HeadcountBruto / Dias) AS decimal(20, 5))
FROM
(SELECT
SUM(ROT_IBAJA) AS Baja,
COUNT(DISTINCT R.TPO_KFecha) AS Dias,
SUM(ROT_IHCOUNT) AS HeadcountBruto
FROM
TH_Rotacion R
INNER JOIN
TD_Tiempo T ON R.TPO_KFECHA=T.TPO_KFecha
WHERE
T.TPO_CFecha >= @vDiai
AND T.TPO_CFecha <= @vDiaf) T
go
SELECT DATA_TYPE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE
TABLE_NAME = 'TD_Tiempo' AND
COLUMN_NAME = 'TPO_CFecha'
go
Run Code Online (Sandbox Code Playgroud)
该GO
休息了你的脚本.只需移动或删除它:
USE DBDMS
GO
DECLARE @vDiai INT;
DECLARE @vDiaf INT;
SET @vDiai = 20171030;
SET @vDiaf = 20181030;
SELECT CAST(100*Baja/(HeadcountBruto/Dias) AS decimal(20,5))
FROM (SELECT SUM(ROT_IBAJA) AS Baja,
COUNT(DISTINCT R.TPO_KFecha) AS Dias,
SUM(ROT_IHCOUNT) AS HeadcountBruto
FROM TH_Rotacion R INNER JOIN
TD_Tiempo T
ON R.TPO_KFECHA = T.TPO_KFecha
WHERE T.TPO_CFecha >= @vDiai AND T.TPO_CFecha <= @vDiaf
) T;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
205 次 |
最近记录: |