2

私は次のものを持っていますが、パーセンテージで答えが必要で、0を取得し続けます。答えを丸める方法を考えていました。前もって感謝します!

SELECT (COUNT(t1.[ENTRY CODE])/2948) AS 'SecondYearRetention'

FROM 
        t1

Inner join
        t2 ON t1.CLID = t2.CLID

WHERE t1.[ENTRY CODE] = 'FTF' OR t1.[ENTRY CODE] = 'CFTF'
4

4 に答える 4

2

2948.0代わりに試してください2948

SELECT 
  (COUNT(t1.[ENTRY CODE]) / 2948.0) AS 'SecondYearRetention'
FROM  t1
Inner join t2 ON t1.CLID = t2.CLID
WHERE t1.[ENTRY CODE] = 'FTF' OR t1.[ENTRY CODE] = 'CFTF'
于 2013-03-20T07:11:04.590 に答える
0
SELECT ROUND((COUNT(t1.[ENTRY CODE])/2948),3)AS 'SecondYearRetention'

FROM 
        t1

Inner join
        t2 ON t1.CLID = t2.CLID

WHERE t1.[ENTRY CODE] = 'FTF' OR t1.[ENTRY CODE] = 'CFTF'

より多くの結果を得るには、これを試して ください http://msdn.microsoft.com/en-us/library/ms175003.aspx

于 2013-03-20T07:31:16.530 に答える
0

また、必要なdata_typeでCASTまたはCONVERT関数を使用できます

SELECT 
  (CAST(COUNT(t1.[ENTRY CODE]) AS decimal(9,8)) / 2948) AS 'SecondYearRetention'
FROM  t1
Inner join t2 ON t1.CLID = t2.CLID
WHERE t1.[ENTRY CODE] = 'FTF' OR t1.[ENTRY CODE] = 'CFTF'

また

SELECT 
  (CONVERT(decimal(9,8),COUNT(t1.[ENTRY CODE])) / 2948) AS 'SecondYearRetention'
FROM  t1
Inner join t2 ON t1.CLID = t2.CLID
WHERE t1.[ENTRY CODE] = 'FTF' OR t1.[ENTRY CODE] = 'CFTF'
于 2013-03-20T07:33:48.577 に答える