如何对行进行分组并选择要在数据表中显示的最新日期

时间:2014-11-26 03:58:01

标签: c# sql-server datatable dataview

我可以通过哪些方法将第一张图片中的数据表排序为第二张图片中的数据表?

当两个或更多行的剂量,药物和患者的值相同时,我想合并它们并使用最新的日期。

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

如果不深入了解实际的C#代码,我建议不要专注于如何操作数据表,而是编写正确的查询来获取所需的信息。

您可以使用GROUP BY子句按剂量,药物和患者分组,并在select语句中使用MAX()来获取该组的最新日期。您还可以按日期升序排序以匹配您的布局。试试这个:

SELECT dosage, drug, patient, MAX(date) AS date
FROM myTable
GROUP BY dosage, drug, patient
ORDER BY date ASC;

以下是SQL Fiddle示例。