這是一個「Select top n for group」的問題,除了我有4個表格並且需要幾個字段的MAX。SELECT top n for multiple tables
SELECT DISTINCT r.Id, p.Description AS Pathway, CONVERT(Varchar(10), s.CreateDate, 101)
AS [Date], s.OptionId, o.Description AS Options, s.Score, o.Risk
FROM ucare.Responses r
INNER JOIN ucare.RiskScores s ON s.ScheduleId = r.ScheduleId
INNER JOIN ucare.PathwayOptions o ON o.Id = s.OptionId
INNER JOIN ucare.Pathways p ON p.Id = r.PathwayId
WHERE r.PathwayId IN
(SELECT DISTINCT PathwayId
FROM ucare.Responses
WHERE r.ScheduleId = '541')
AND Score IN
(SELECT DISTINCT MAX(Score) OVER (PARTITION BY s.OptionId)
FROM ucare.RiskScores WHERE ScheduleId = '541')
AND o.Risk IN
(SELECT DISTINCT MAX(Risk) OVER (PARTITION BY o.Id) AS Risk
FROM ucare.PathwayOptions)
GROUP BY r.Id, s.OptionId, p.Description, s.Score, s.CreateDate, o.Description, o.Risk
的結果:
**Id Pathway Date OptionId Options Score Risk**
1 Test pathway 1 6/19/2017 4 Test Option 1 160 10
10 Test pathway 2 6/19/2017 4 Test Option 1 160 10
17 Test pathway 3 6/19/2017 4 Test Option 1 160 10
我需要的是:
**Id Pathway Date OptionId Options Score Risk**
1 Test pathway 1 6/19/2017 4 Test Option 1 160 10
10 Test pathway 2 6/19/2017 34 Test Option 2 62 10
17 Test pathway 3 6/19/2017 49 Test Option 3 50 2
凡OptionId,選項(o.Description),分數和風險更改ID更改時。 任何幫助將不勝感激,謝謝,
傑克
至於敘述這概括了我要找的。首先,我們獲取與特定ScheduleId相關的所有響應(ucare.Responses),在這種情況下爲541.這將爲我們提供1,10和17的DISTINCT PathwayId,它們與ucare的查找錶鏈接。Pathways Description 。
從這裏541的ScheduleId鏈接ucare.RiskScores,它給了我們PathwayOptionsId's,CreateDate's和Scores。 PathwayOptionId用於鏈接到ucare.PathwayOptions表中的Id字段,我們可以在其中獲得匹配的PathwayOption說明,最近的(MAX(CreateDate))和匹配的MAX(風險)。
MAX風險用於打破RiskScore存在的任何關係。例如,如果我們查詢具有541的ScheduleId的ucare.RiskScores,則有4個匹配的PathwayOptionId's,1,2,4和5,其得分爲160,但具有8,7,10和9的風險。選項#4具有MAX分數爲160,最大風險爲10,所以這是我們的選擇。 這將完成ScheduleId 541的鏈接鏈。
這是新的CREATE/INSERT腳本,它具有所有要匹配的字段和適當的數據。
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [ucare].[PathwayOptions](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Title] [nvarchar](max) NOT NULL,
[Description] [nvarchar](max) NOT NULL,
[Risk] [int] NOT NULL,
[PathwayId] [int] NOT NULL,
[Range] [varchar](50) NULL,
CONSTRAINT [PK_ucare.PathwayOptions] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
SET IDENTITY_INSERT [ucare].[PathwayOptions] ON
INSERT [ucare].[PathwayOptions] ([Id], [Title], [Description], [Risk], [PathwayId], [Range]) VALUES
(1, N'COPD B', N'GOLD Risk Level B - Low Risk, High Symptom', 8, 1, NULL),
(2, N'COPD A', N'GOLD Risk Level A - Low Risk, Low Symptom', 7, 1, NULL),
(4, N'COPD D', N'GOLD Risk Level D - High Risk, High Symptom', 10, 1, NULL),
(5, N'COPD C', N'GOLD Risk Level C - High Risk, Low Symptom', 9, 1, NULL),
(6, N'TKA PT High Fxn', N'High FxnTKA', 7, 2, NULL),
(7, N'TKA PT', N'TKA High Function', 7, 2, NULL),
(9, N'TKA PT', N'TKA Med', 9, 2, NULL),
(12, N'Fall Risk - High', N'Rehab Fall Risk - High', 10, 5, NULL),
(13, N'Fall Risk - Medium', N'Rehab Fall Risk - Medium', 9, 5, NULL),
(14, N'Fall Risk - Low', N'Rehab Fall Risk - Low', 8, 5, NULL),
(15, N'High Fall Risk', N'High Risk of Falling', 10, 4, NULL),
(16, N'Low Fall Risk', N'Low Risk of Falling', 8, 4, NULL),
(17, N'Primary Prevention 2', N'Primary Prevention Level 2', 6, 7, NULL),
(18, N'Primary Prevention 1', N'Primary Prevention Level 1', 5, 7, NULL),
(21, N'Stable/Improving', N'No significant changes', 7, 8, NULL),
(22, N'Mixed Change', N'Mixed results from assessment', 8, 8, NULL),
(23, N'Significant Decline', N'Observation shows marked decline in condition', 9, 8, NULL),
(24, N'High Alert', N'Results require an immediate alert', 10, 8, NULL),
(25, N'Secondary Prevention 1', N'Secondary Prevention Level 1', 7, 7, NULL),
(26, N'Secondary Prevention 2', N'Secondary Prevention Level 2', 8, 7, NULL),
(27, N'Tertiary Prevention', N'Tertiary Prevention', 9, 7, NULL),
(28, N'Catastrophic Care', N'Catastrophic Care', 10, 7, NULL),
(29, N'Grade 0', N'Grade 0', 0, 9, NULL),
(30, N'Grade 1', N'Grade 1', 1, 9, NULL),
(31, N'Grade 2', N'Grade 2', 2, 9, NULL),
(32, N'Grade 3', N'Grade 3', 3, 9, NULL),
(33, N'Grade 4', N'Grade 4', 4, 9, NULL),
(34, N'High Risk', N'High Risk of OSA', 10, 10, N'5-8'),
(35, N'Low Risk', N'Low Risk of OSA', 8, 10, N'0-2'),
(36, N'Low Fall Risk', N'Low Risk of Falling', 9, 6, NULL),
(37, N'High Fall Risk', N'High Risk of Falling', 10, 6, NULL),
(38, N'Current Placement Appropriate', N'The current care setting is appropriate', 8, 11, NULL),
(39, N'Consider New Placement', N'Higher level care may be necessary', 9, 11, NULL),
(40, N'New Placement Needed', N'Higher level of care is strongly recommended', 10, 11, NULL),
(41, N'Driving is Appropriate', N'No significant signs of driving danger', 7, 12, NULL),
(42, N'Monitor Driving Safety', N'Continue to Monitor the Driving Safety', 8, 12, NULL),
(43, N'Driving Safety is a Concern', N'Consider restricting or removing from driving', 9, 12, NULL),
(44, N'Driving is Not Appropriate', N'Driving should not be allowed', 10, 12, NULL),
(45, N'No current needs', N'No home service needs', 9, 13, NULL),
(46, N'Some Home Service Needs', N'Home service needed', 10, 13, NULL),
(47, N'Hi Risk', N'High Fall Risk', 10, 16, NULL),
(48, N'Lo Risk ', N'Low Fall Risk', 9, 16, NULL),
(49, N'Low Risk', N'Low risk range', 0, 17, N'1-2'),
(50, N'Medium Risk', N'Medium risk option', 1, 17, N'6-10'),
(51, N'High Risk', N'High risk option', 2, 17, N'11-15'),
(52, N'Intermediate Risk', N'Intermediate Rsk of OSA', 9, 10, N'3-4'),
(53, N'Lo Fall', N'Low Fall Risk', 9, 18, NULL),
(54, N'Very High', N'Very High Impact', 10, 25, N'31-50'),
(55, N'High', N'High Impact Level', 9, 25, N'21-30'),
(56, N'Medium', N'Medium Impact Level', 8, 25, N'10-20'),
(57, N'Low', N'Low Impact Level', 7, 25, N'6-9'),
(58, N'None', N'No Impact', 6, 25, N'0-5')
SET IDENTITY_INSERT [ucare].[PathwayOptions] OFF
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [ucare].[Responses](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Text] [nvarchar](max) NULL,
[PathwayOptionId] [int] NOT NULL,
[DecisionInputId] [int] NOT NULL,
[ScheduleId] [int] NOT NULL,
[EntryDate] [datetime] NULL,
[PathwayId] [int] NOT NULL,
[EncounterId] [int] NOT NULL,
[EpisodeId] [int] NOT NULL,
CONSTRAINT [PK_ucare.Responses] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET IDENTITY_INSERT [ucare].[Responses] ON
INSERT [ucare].[Responses] ([Id], [Text], [PathwayOptionId], [DecisionInputId], [ScheduleId], [EntryDate], [PathwayId], [EncounterId], [EpisodeId]) VALUES
(1179, N'True', 0, 17, 543, CAST(0x0000A7940067AC73 AS DateTime), 17, 543, 1),
(1180, N'True', 0, 130, 543, CAST(0x0000A7940067AC73 AS DateTime), 17, 543,1),
(1181, N'True', 0, 16, 543, CAST(0x0000A7940067AC73 AS DateTime), 17, 543, 1),
(1182, N'True', 0, 76, 543, CAST(0x0000A7940067AC73 AS DateTime), 17, 543, 1),
(1183, N'34', 0, 38, 543, CAST(0x0000A79400578978 AS DateTime), 17, 543, 1),
(1184, N'True', 0, 82, 543, CAST(0x0000A79400578978 AS DateTime), 17, 543, 1),
(1185, N'True', 0, 17, 543, CAST(0x0000A79400578978 AS DateTime), 17, 543, 1),
(1186, N'True', 0, 130, 543, CAST(0x0000A79400578978 AS DateTime), 17, 543, 1),
(1187, N'True', 0, 16, 543, CAST(0x0000A79400578978 AS DateTime), 17, 543, 1),
(1188, N'True', 0, 76, 543, CAST(0x0000A79400578978 AS DateTime), 17, 543, 1),
(1189, N'34', 0, 38, 543, CAST(0x0000A79400579A40 AS DateTime), 17, 543, 1),
(1190, N'True', 0, 82, 543, CAST(0x0000A79400579A40 AS DateTime), 17, 543, 1),
(1191, N'True', 0, 17, 543, CAST(0x0000A79400579A40 AS DateTime), 17, 543, 1),
(1192, N'False', 0, 130, 543, CAST(0x0000A79400579A40 AS DateTime), 17, 543, 1),
(1193, N'False', 0, 16, 543, CAST(0x0000A79400579A40 AS DateTime), 17, 543, 1),
(1194, N'False', 0, 76, 543, CAST(0x0000A79400579A40 AS DateTime), 17, 543, 1),
(1195, N'2', 0, 66, 541, CAST(0x0000A7970091A833 AS DateTime), 1, 541, 1),
(1196, N'2', 0, 67, 541, CAST(0x0000A7970091A833 AS DateTime), 1, 541, 1),
(1197, N'3', 0, 68, 541, CAST(0x0000A7970091A833 AS DateTime), 1, 541, 1),
(1198, N'False', 0, 65, 541, CAST(0x0000A7970091A833 AS DateTime), 1, 541, 1),
(1199, N'12', 0, 39, 541, CAST(0x0000A7970091A833 AS DateTime), 1, 541, 1),
(1200, N'1', 0, 66, 541, CAST(0x0000A797009281A8 AS DateTime), 1, 541, 1),
(1201, N'1', 0, 67, 541, CAST(0x0000A797009281A8 AS DateTime), 1, 541, 1),
(1202, N'1', 0, 68, 541, CAST(0x0000A797009281A8 AS DateTime), 1, 541, 1),
(1203, N'False', 0, 65, 541, CAST(0x0000A797009281A8 AS DateTime), 1, 541, 1),
(1204, N'9', 0, 39, 541, CAST(0x0000A797009281A8 AS DateTime), 1, 541, 1),
(1205, N'', 0, 38, 541, CAST(0x0000A7970095C348 AS DateTime), 17, 541, 1),
(1206, N'True', 0, 82, 541, CAST(0x0000A7970095C348 AS DateTime), 17, 541, 1),
(1207, N'True', 0, 17, 541, CAST(0x0000A7970095C348 AS DateTime), 17, 541, 1),
(1208, N'False', 0, 130, 541, CAST(0x0000A7970095C348 AS DateTime), 17, 541, 1),
(1209, N'False', 0, 16, 541, CAST(0x0000A7970095C348 AS DateTime), 17, 541, 1),
(1210, N'True', 0, 76, 541, CAST(0x0000A7970095C348 AS DateTime), 17, 541, 1),
(1211, N'True', 0, 92, 541, CAST(0x0000A79700973842 AS DateTime), 10, 541, 1),
(1212, N'False', 0, 93, 541, CAST(0x0000A79700973842 AS DateTime), 10, 541, 1),
(1213, N'False', 0, 94, 541, CAST(0x0000A79700973842 AS DateTime), 10, 541, 1),
(1214, N'True', 0, 95, 541, CAST(0x0000A79700973842 AS DateTime), 10, 541, 1),
(1215, N'True', 0, 96, 541, CAST(0x0000A79700973842 AS DateTime), 10, 541, 1),
(1216, NULL, 0, 97, 541, CAST(0x0000A79700973842 AS DateTime), 10, 541, 1),
(1217, N'True', 0, 98, 541, CAST(0x0000A79700973842 AS DateTime), 10, 541, 1),
(1218, N'True', 0, 99, 541, CAST(0x0000A79700973842 AS DateTime), 10, 541, 1),
(1219, N'True', 0, 92, 541, CAST(0x0000A79700974DEC AS DateTime), 10, 541, 1),
(1220, N'False', 0, 93, 541, CAST(0x0000A79700974DEC AS DateTime), 10, 541, 1),
(1221, N'False', 0, 94, 541, CAST(0x0000A79700974DEC AS DateTime), 10, 541, 1),
(1222, N'True', 0, 95, 541, CAST(0x0000A79700974DEC AS DateTime), 10, 541, 1),
(1223, N'False', 0, 96, 541, CAST(0x0000A79700974DEC AS DateTime), 10, 541, 1),
(1224, NULL, 0, 97, 541, CAST(0x0000A79700974DEC AS DateTime), 10, 541, 1),
(1225, N'True', 0, 98, 541, CAST(0x0000A79700974DEC AS DateTime), 10, 541, 1),
(1226, N'True', 0, 99, 541, CAST(0x0000A79700974DEC AS DateTime), 10, 541, 1),
(1227, N'False', 0, 92, 541, CAST(0x0000A797009756C0 AS DateTime), 10, 541, 1),
(1228, N'False', 0, 93, 541, CAST(0x0000A797009756C0 AS DateTime), 10, 541, 1),
(1229, N'False', 0, 94, 541, CAST(0x0000A797009756C0 AS DateTime), 10, 541, 1),
(1230, N'False', 0, 95, 541, CAST(0x0000A797009756C0 AS DateTime), 10, 541, 1),
(1231, N'False', 0, 96, 541, CAST(0x0000A797009756C0 AS DateTime), 10, 541, 1),
(1232, NULL, 0, 97, 541, CAST(0x0000A797009756C0 AS DateTime), 10, 541, 1),
(1233, N'True', 0, 98, 541, CAST(0x0000A797009756C0 AS DateTime), 10, 541, 1),
(1234, N'True', 0, 99, 541, CAST(0x0000A797009756C0 AS DateTime), 10, 541, 1),
(1235, N'True', 0, 92, 540, CAST(0x0000A79800A381F1 AS DateTime), 10, 540, 1),
(1236, N'False', 0, 93, 540, CAST(0x0000A79800A381F1 AS DateTime), 10, 540, 1),
(1237, N'False', 0, 94, 540, CAST(0x0000A79800A381F1 AS DateTime), 10, 540, 1),
(1238, N'True', 0, 95, 540, CAST(0x0000A79800A381F1 AS DateTime), 10, 540, 1),
(1239, N'True', 0, 96, 540, CAST(0x0000A79800A381F1 AS DateTime), 10, 540, 1),
(1240, NULL, 0, 97, 540, CAST(0x0000A79800A381F1 AS DateTime), 10, 540, 1),
(1241, NULL, 0, 98, 540, CAST(0x0000A79800A381F1 AS DateTime), 10, 540, 1),
(1242, NULL, 0, 99, 540, CAST(0x0000A79800A381F1 AS DateTime), 10, 540, 1),
(1243, N'False', 0, 92, 540, CAST(0x0000A79800AE690E AS DateTime), 10, 540, 1),
(1244, N'True', 0, 93, 540, CAST(0x0000A79800AE690E AS DateTime), 10, 540, 1),
(1245, N'False', 0, 94, 540, CAST(0x0000A79800AE690E AS DateTime), 10, 540, 1),
(1246, N'True', 0, 95, 540, CAST(0x0000A79800AE690E AS DateTime), 10, 540, 1),
(1247, NULL, 0, 96, 540, CAST(0x0000A79800AE690E AS DateTime), 10, 540, 1),
(1248, N'False', 0, 97, 540, CAST(0x0000A79800AE690E AS DateTime), 10, 540, 1),
(1249, N'True', 0, 98, 540, CAST(0x0000A79800AE690E AS DateTime), 10, 540, 1),
(1250, NULL, 0, 99, 540, CAST(0x0000A79800AE690E AS DateTime), 10, 540, 1),
(1251, N'False', 0, 92, 540, CAST(0x0000A79800AFFEE6 AS DateTime), 10, 540, 1),
(1252, N'True', 0, 93, 540, CAST(0x0000A79800AFFEE6 AS DateTime), 10, 540, 1),
(1253, N'False', 0, 94, 540, CAST(0x0000A79800AFFEE6 AS DateTime), 10, 540, 1),
(1254, N'True', 0, 95, 540, CAST(0x0000A79800AFFEE6 AS DateTime), 10, 540, 1),
(1255, NULL, 0, 96, 540, CAST(0x0000A79800AFFEE6 AS DateTime), 10, 540, 1),
(1256, N'True', 0, 97, 540, CAST(0x0000A79800AFFEE6 AS DateTime), 10, 540, 1),
(1257, N'True', 0, 98, 540, CAST(0x0000A79800AFFEE6 AS DateTime), 10, 540, 1),
(1258, N'True', 0, 99, 540, CAST(0x0000A79800AFFEE6 AS DateTime), 10, 540, 1),
(1259, N'2', 0, 66, 540, CAST(0x0000A79800B0493B AS DateTime), 1, 540, 1),
(1260, N'3', 0, 67, 540, CAST(0x0000A79800B0493B AS DateTime), 1, 540, 1),
(1261, N'3', 0, 68, 540, CAST(0x0000A79800B0493B AS DateTime), 1, 540, 1),
(1262, N'True', 0, 65, 540, CAST(0x0000A79800B0493B AS DateTime), 1, 540, 1),
(1263, N'12', 0, 39, 540, CAST(0x0000A79800B0493B AS DateTime), 1, 540, 1),
(1264, N'0', 0, 66, 540, CAST(0x0000A79800B087C5 AS DateTime), 1, 540, 1),
(1265, N'3', 0, 67, 540, CAST(0x0000A79800B087C5 AS DateTime), 1, 540, 1),
(1266, N'4', 0, 68, 540, CAST(0x0000A79800B087C5 AS DateTime), 1, 540, 1),
(1267, N'True', 0, 65, 540, CAST(0x0000A79800B087C5 AS DateTime), 1, 540, 1),
(1268, N'12', 0, 39, 540, CAST(0x0000A79800B087C5 AS DateTime), 1, 540, 1),
(1269, N'23', 0, 38, 356, CAST(0x0000A79900D5FDCC AS DateTime), 17, 356, 1),
(1270, N'True', 0, 82, 356, CAST(0x0000A79900D5FDCC AS DateTime), 17, 356, 1),
(1271, N'False', 0, 17, 356, CAST(0x0000A79900D5FDCC AS DateTime), 17, 356, 1),
(1272, N'True', 0, 130, 356, CAST(0x0000A79900D5FDCC AS DateTime), 17, 356, 1),
(1273, N'True', 0, 16, 356, CAST(0x0000A79900D5FDCC AS DateTime), 17, 356, 1),
(1274, N'True', 0, 76, 356, CAST(0x0000A79900D5FDCC AS DateTime), 17, 356, 1),
(1275, N'1', 0, 66, 356, CAST(0x0000A79A0098DF24 AS DateTime), 1, 356, 1),
(1276, N'1', 0, 67, 356, CAST(0x0000A79A0098DF24 AS DateTime), 1, 356, 1),
(1277, N'1', 0, 68, 356, CAST(0x0000A79A0098DF24 AS DateTime), 1, 356, 1),
(1278, N'False', 0, 65, 356, CAST(0x0000A79A0098DF24 AS DateTime), 1, 356, 1),
(1279, N'9', 0, 39, 356, CAST(0x0000A79A0098DF24 AS DateTime), 1, 356, 1)
SET IDENTITY_INSERT [ucare].[Responses] OFF
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [ucare].[RiskScores](
[Id] [int] IDENTITY(1,1) NOT NULL,
[ScheduleId] [int] NOT NULL,
[PathwayOptionId] [int] NOT NULL,
[Score] [int] NOT NULL,
[CreateDate] [datetime] NULL,
[CreatedBy] [varchar](200) NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
SET IDENTITY_INSERT [ucare].[RiskScores] ON
INSERT [ucare].[RiskScores] ([Id], [ScheduleId], [PathwayOptionId], [Score], [CreateDate], [CreatedBy]) VALUES
(1, 1, 14, 0, CAST(0x0000A77500E986A9 AS DateTime), N'Admin'),
(2, 1, 14, 0, CAST(0x0000A77500E9CD16 AS DateTime), N'Admin'),
(3, 1, 14, 0, CAST(0x0000A77500EA13CB AS DateTime), N'Admin'),
(4, 1, 14, 0, CAST(0x0000A77600A7A764 AS DateTime), N'Admin'),
(5, 1, 14, 0, CAST(0x0000A77600A7B604 AS DateTime), N'Admin'),
(6, 1, 14, 0, CAST(0x0000A77600A83653 AS DateTime), N'Admin'),
(7, 1, 14, 0, CAST(0x0000A77600A9486B AS DateTime), N'Admin'),
(8, 1, 14, 0, CAST(0x0000A77600A981A9 AS DateTime), N'Admin'),
(9, 1, 14, 0, CAST(0x0000A77600AB4821 AS DateTime), N'Admin'),
(10, 2, 14, 0, CAST(0x0000A77600AC0883 AS DateTime), N'Admin'),
(11, 2, 14, 0, CAST(0x0000A77600B25DF2 AS DateTime), N'Admin'),
(12, 2, 14, 0, CAST(0x0000A77600B2F07C AS DateTime), N'Admin'),
(13, 2, 14, 0, CAST(0x0000A77600DEDD85 AS DateTime), N'Admin'),
(14, 2, 14, 0, CAST(0x0000A77600DF5E89 AS DateTime), N'Admin'),
(15, 2, 14, 0, CAST(0x0000A77600DF8575 AS DateTime), N'Admin'),
(16, 2, 1, 0, CAST(0x0000A77B00B0F7C4 AS DateTime), N'Admin'),
(17, 2, 2, 0, CAST(0x0000A77B00B0F7C4 AS DateTime), N'Admin'),
(18, 2, 4, 20, CAST(0x0000A77B00B0F7C4 AS DateTime), N'Admin'),
(19, 2, 5, 20, CAST(0x0000A77B00B0F7C4 AS DateTime), N'Admin'),
(20, 2, 1, 60, CAST(0x0000A77B00B150AE AS DateTime), N'Admin'),
(21, 2, 2, 60, CAST(0x0000A77B00B150AE AS DateTime), N'Admin'),
(22, 2, 4, 40, CAST(0x0000A77B00B150AE AS DateTime), N'Admin'),
(23, 2, 5, 40, CAST(0x0000A77B00B150AE AS DateTime), N'Admin'),
(24, 2, 1, 60, CAST(0x0000A77B00BD3FDA AS DateTime), N'Admin'),
(25, 2, 2, 60, CAST(0x0000A77B00BD3FDA AS DateTime), N'Admin'),
(26, 2, 4, 40, CAST(0x0000A77B00BD3FDA AS DateTime), N'Admin'),
(27, 2, 5, 40, CAST(0x0000A77B00BD3FDA AS DateTime), N'Admin'),
(28, 2, 15, 14, CAST(0x0000A77B00BD832E AS DateTime), N'Admin'),
(29, 2, 16, 14, CAST(0x0000A77B00BD832E AS DateTime), N'Admin'),
(1002, 2, 14, 0, CAST(0x0000A77C0070AE72 AS DateTime), N'Admin'),
(1003, 2, 1, 60, CAST(0x0000A77C0070C1E6 AS DateTime), N'Admin'),
(1004, 2, 2, 60, CAST(0x0000A77C0070C1E6 AS DateTime), N'Admin'),
(1005, 2, 4, 40, CAST(0x0000A77C0070C1E6 AS DateTime), N'Admin'),
(1006, 2, 5, 40, CAST(0x0000A77C0070C1E6 AS DateTime), N'Admin'),
(1007, 2, 49, 16, CAST(0x0000A79100E87601 AS DateTime), N'Admin'),
(1008, 2, 50, 16, CAST(0x0000A79100E87601 AS DateTime), N'Admin'),
(1009, 2, 51, 16, CAST(0x0000A79100E87601 AS DateTime), N'Admin'),
(1016, 2, 49, 50, CAST(0x0000A79100FADB8A AS DateTime), N'Admin'),
(1017, 2, 50, 100, CAST(0x0000A79100FD7090 AS DateTime), N'Admin'),
(1018, 2, 49, 16, CAST(0x0000A79100FDB842 AS DateTime), N'Admin'),
(1025, 543, 50, 100, CAST(0x0000A794006340B9 AS DateTime), N'Admin'),
(1026, 543, 50, 100, CAST(0x0000A79400639285 AS DateTime), N'Admin'),
(1027, 543, 50, 100, CAST(0x0000A7940063D4EE AS DateTime), N'Admin'),
(1028, 543, 50, 100, CAST(0x0000A7940063E528 AS DateTime), N'Admin'),
(1029, 543, 50, 100, CAST(0x0000A79400644580 AS DateTime), N'Admin'),
(1030, 543, 50, 100, CAST(0x0000A79400649B97 AS DateTime), N'Admin'),
(1031, 543, 50, 100, CAST(0x0000A79400663C8F AS DateTime), N'Admin'),
(1033, 543, 50, 100, CAST(0x0000A79400578978 AS DateTime), N'Admin'),
(1034, 543, 49, 50, CAST(0x0000A79400579A40 AS DateTime), N'Admin'),
(1035, 541, 1, 160, CAST(0x0000A7970091A833 AS DateTime), N'Admin'),
(1036, 541, 2, 0, CAST(0x0000A7970091A833 AS DateTime), N'Admin'),
(1037, 541, 4, 160, CAST(0x0000A7970091A833 AS DateTime), N'Admin'),
(1038, 541, 5, 0, CAST(0x0000A7970091A833 AS DateTime), N'Admin'),
(1039, 541, 1, 0, CAST(0x0000A797009281A8 AS DateTime), N'Admin'),
(1040, 541, 2, 160, CAST(0x0000A797009281A8 AS DateTime), N'Admin'),
(1041, 541, 4, 0, CAST(0x0000A797009281A8 AS DateTime), N'Admin'),
(1042, 541, 5, 160, CAST(0x0000A797009281A8 AS DateTime), N'Admin'),
(1043, 541, 49, 50, CAST(0x0000A7970095C348 AS DateTime), N'Admin'),
(1044, 541, 34, 62, CAST(0x0000A79700973842 AS DateTime), N'Admin'),
(1045, 541, 52, 50, CAST(0x0000A79700974DEC AS DateTime), N'Admin'),
(1046, 541, 35, 25, CAST(0x0000A797009756C0 AS DateTime), N'Admin'),
(1049, 540, 34, 62, CAST(0x0000A79800AFFEE6 AS DateTime), N'Admin'),
(1050, 540, 1, 160, CAST(0x0000A79800B0493B AS DateTime), N'Admin'),
(1051, 540, 2, 0, CAST(0x0000A79800B0493B AS DateTime), N'Admin'),
(1052, 540, 4, 160, CAST(0x0000A79800B0493B AS DateTime), N'Admin'),
(1053, 540, 5, 0, CAST(0x0000A79800B0493B AS DateTime), N'Admin'),
(1054, 540, 1, 160, CAST(0x0000A79800B087C5 AS DateTime), N'Admin')
SET IDENTITY_INSERT [ucare].[RiskScores] OFF
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [ucare].[Pathways](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Title] [nvarchar](max) NOT NULL,
[Description] [nvarchar](max) NOT NULL,
[ProviderType] [nvarchar](max) NULL,
[PatientPathway_Id] [int] NULL,
[CalculationType] [varchar](50) NOT NULL,
[Instructions] [varchar](400) NULL,
[RecordStatus] [char](1) NOT NULL,
CONSTRAINT [PK_ucare.Pathways] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
SET IDENTITY_INSERT [ucare].[Pathways] ON
INSERT [ucare].[Pathways] ([Id], [Title], [Description]) VALUES
(1, N'COPD GOLD Risk Classification', N'COPD GOLD Classification'),
(2, N'TKA PT', N'Physical Therapy TKA'),
(4, N'Fall Assess - RN', N'Medical Fall Risk Screen'),
(5, N'Fall Assess - Rehab', N'Rehab Specialist Fall Assessment'),
(6, N'Fall Assess - Caregiver', N'Caregiver Fall Assessment'),
(7, N'Global Risk', N'Global Risk Stratification'),
(8, N'COPD Assess - RT', N'COPD Assessment - Respiratory Therapist'),
(9, N'MMRC Test', N'MMRC Dyspnea Test'),
(10, N'STOP BANG ', N'Stop Bang Assessment'),
(11, N'Care Placement Needs Assessment', N'Assessment for Patient Placement'),
(12, N'Driving Assessment', N'Driving Ability Assessemnt'),
(13, N'Home Care Needs Assessment', N'Home Care Needs Assessment'),
(14, N'Home Services Needs Assessment', N'Assessment to the specific needs for home services'),
(15, N'DbCustomerTest', N'Testing-1'),
(16, N'FRAT Assessment', N'Fall Risk Assessment'),
(17, N'A - Test Count Pathway', N'Test pathway for updated count scoring algorithm'),
(18, N'FRAT Assessment', N'Fall Risk Assessment'),
(21, N'AAA Test', N'Test'),
(25, N'CAT', N'COPD Assessment Test (CAT)')
SET IDENTITY_INSERT [ucare].[Pathways] OFF
樣本數據請 – DhruvJoshi
簡短的回答「CROSS APPLY SELECT TOP N FROM ... ORDER BY ...)如果你想要一個更好的答案,請提供測試數據在礦井創建表和插入數據腳本的形式。 –
我在查詢中沒有看到TOP n,並且我不知道什麼是「Top n for group」問題。請您提供解釋嗎? – DVT