CASE文は、式にABS()関数を使用していても、負の値を持つレコードをキャッチしているようではありません。問題のレコードは、「絶対値付きのCASE文
WHEN ABS(DifferenceHours - @Mean_Diff) >1*@SD
AND ABS(DifferenceHours - @Mean_Diff) <=2*@SD
THEN 'Recommend Review'
」
誰もがこの上でいくつかの光を当てることができcase文の範囲に入るべきで-1.52の値を有するものですか?前もって感謝します!問題の
CREATE TABLE [dbo].[Sample_Data](
[ID] [char](6) NOT NULL,
[Actual_Hours] [decimal](38, 2) NULL,
[Standard_Hours] [decimal](10, 2) NULL,
[DifferenceHours] [decimal](38, 2) NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
INSERT [dbo].[Sample_Data] ([ID], [Actual_Hours], [Standard_Hours], [DifferenceHours]) VALUES (N'490412', CAST(1.22 AS Decimal(38, 2)), CAST(0.92 AS Decimal(10, 2)), CAST(0.30 AS Decimal(38, 2)))
INSERT [dbo].[Sample_Data] ([ID], [Actual_Hours], [Standard_Hours], [DifferenceHours]) VALUES (N'491712', CAST(1.36 AS Decimal(38, 2)), CAST(0.92 AS Decimal(10, 2)), CAST(0.44 AS Decimal(38, 2)))
INSERT [dbo].[Sample_Data] ([ID], [Actual_Hours], [Standard_Hours], [DifferenceHours]) VALUES (N'493822', CAST(1.96 AS Decimal(38, 2)), CAST(0.92 AS Decimal(10, 2)), CAST(1.04 AS Decimal(38, 2)))
INSERT [dbo].[Sample_Data] ([ID], [Actual_Hours], [Standard_Hours], [DifferenceHours]) VALUES (N'496762', CAST(1.51 AS Decimal(38, 2)), CAST(1.84 AS Decimal(10, 2)), CAST(-0.33 AS Decimal(38, 2)))
INSERT [dbo].[Sample_Data] ([ID], [Actual_Hours], [Standard_Hours], [DifferenceHours]) VALUES (N'497082', CAST(2.72 AS Decimal(38, 2)), CAST(0.92 AS Decimal(10, 2)), CAST(1.80 AS Decimal(38, 2)))
INSERT [dbo].[Sample_Data] ([ID], [Actual_Hours], [Standard_Hours], [DifferenceHours]) VALUES (N'497092', CAST(1.45 AS Decimal(38, 2)), CAST(0.92 AS Decimal(10, 2)), CAST(0.53 AS Decimal(38, 2)))
INSERT [dbo].[Sample_Data] ([ID], [Actual_Hours], [Standard_Hours], [DifferenceHours]) VALUES (N'497162', CAST(2.06 AS Decimal(38, 2)), CAST(0.92 AS Decimal(10, 2)), CAST(1.14 AS Decimal(38, 2)))
INSERT [dbo].[Sample_Data] ([ID], [Actual_Hours], [Standard_Hours], [DifferenceHours]) VALUES (N'498002', CAST(2.03 AS Decimal(38, 2)), CAST(0.92 AS Decimal(10, 2)), CAST(1.11 AS Decimal(38, 2)))
INSERT [dbo].[Sample_Data] ([ID], [Actual_Hours], [Standard_Hours], [DifferenceHours]) VALUES (N'498632', CAST(0.89 AS Decimal(38, 2)), CAST(0.92 AS Decimal(10, 2)), CAST(-0.03 AS Decimal(38, 2)))
INSERT [dbo].[Sample_Data] ([ID], [Actual_Hours], [Standard_Hours], [DifferenceHours]) VALUES (N'499162', CAST(0.79 AS Decimal(38, 2)), CAST(1.84 AS Decimal(10, 2)), CAST(-1.05 AS Decimal(38, 2)))
INSERT [dbo].[Sample_Data] ([ID], [Actual_Hours], [Standard_Hours], [DifferenceHours]) VALUES (N'499582', CAST(1.19 AS Decimal(38, 2)), CAST(0.92 AS Decimal(10, 2)), CAST(0.27 AS Decimal(38, 2)))
コード::私は、スタック交換のフォーマットに苦しんでいます
スクリプトがテーブル含むサンプルデータを作成する(期待される結果のフォーマットについて申し訳ありません)。私が自分のコードを貼り付けると、改行して「いくつかのアスタリスク」を取り除きます。なぜ私は考えていない。私はそれを整理しようとしている間、ここにコードを掲載しました。興味深いことに、サンプルデータを含むテーブルを作成するコードに問題はないようでした。
https://codedump.io/share/7ISZ7p8qrXvu/1
SAMPLE_DATA
私の期待される結果FROM:Actual_Hours = 0.79とStandard_Hours = 1.84我々は数学を評価し、我々が得るこの特定の行の値を使用して
ID | Actual_Hours | Standard_Hours | DifferenceHours | Deviation | Recommendation
490412 | 1.22 | 0.92 | 0.30 | -0.17 |
491712 | 1.36 | 0.92 | 0.44 | -0.03 |
493822 | 1.96 | 0.92 | 1.04 | 0.57 |
496762 | 1.51 | 1.84 |-0.33 | -0.80 |
497082 | 2.72 | 0.92 | 1.80 | 1.33 | Recommend Review
497092 | 1.45 | 0.92 | 0.53 | 0.06 |
497162 | 2.06 | 0.92 | 1.14 | 0.67 |
498002 | 2.03 | 0.92 | 1.11 | 0.64 |
498632 | 0.89 | 0.92 |-0.03 | -0.50 |
499162 | 0.79 | 1.84 | -1.05| -1.52 | RecommendReview <-
499582 | 1.19 | 0.92 | 0.27 | -0.20 |
FROMは何かを、あなたがコピーしたときにあなたのコードからストリッピングして貼り付けたのですか?私はStandard_Hoursでエラーになります)100> 25 –
1秒、病気チェック。これを見てくれてありがとう – roman
はい、コピー&ペーストで何かが詰まっていて、今修正しようとしています – roman