私は2つのカウントを取得しようとしていると私はカウントしている項目の比率を得るために、これらの2つのカウントを分割します。私はこのポストhereを見て、それを試みた。私の結果にエラーが表示されていますが、間違った番号のエラーメッセージはありません。私はここではSQL-Server 2008の2つのカウントを取得し、それらを分割する
を使用しています私のコードです:
-- INTERNAL PEPPER REPORT
--#####################################################################
-- VARIABLE DECLARATION AND INITIALIZATION
DECLARE @SD DATETIME
DECLARE @ED DATETIME
SET @SD = '2013-01-01'
SET @ED = '2013-03-31'
-- TABLE DECLARATION ##################################################
DECLARE @TABLE1 TABLE(NUMERATOR INT, DENOMINATOR INT, RATIO INT)
--#####################################################################
-- WHAT GETS INSERTED INTO TABLE 1
INSERT INTO @TABLE1
SELECT
A.NUM, A.DENOM, A.NUM/A.DENOM
FROM
(
-- COLUMN SELECTION. TWO NUMBERS WILL REPRESENT A NUM AND A DENOM
SELECT
(SELECT COUNT(DRG_NO)
FROM smsdss.BMH_PLM_PtAcct_V
WHERE drg_no IN (061,062,063,064,065,066)
AND Adm_Date BETWEEN @SD AND @ED
AND PLM_PT_ACCT_TYPE = 'I')
AS NUM,
(SELECT COUNT(DRG_NO)
FROM smsdss.BMH_PLM_PtAcct_V
WHERE drg_no IN (061,062,063,064,065,066,067,068,069)
AND Adm_Date BETWEEN @SD AND @ED
AND Plm_Pt_Acct_Type = 'I')
AS DENOM
)A
SELECT NUMERATOR, DENOMINATOR, RATIO
FROM @TABLE1
数が生産され、正しく表示が、私は0を取得し、私はこれを取得理由として確認していない割合のために取得します。
ありがとう、
これはまだ0を生成しました...私は、INTの代わりに表の作成をFLOATに変更しようとしています。 –
Countは常にINTを返すので、Count()の戻り値の型は何も変わりません。このクエリをテストしたところ、完璧に機能しました – VahiD
毎日新しいことを学ぶ、COUNT()がINTを返します。 –