Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 将列添加到datatable,并在vb.net中填充对同一datatable的查询_Sql_Sql Server_Vb.net_Datatable - Fatal编程技术网

Sql 将列添加到datatable,并在vb.net中填充对同一datatable的查询

Sql 将列添加到datatable,并在vb.net中填充对同一datatable的查询,sql,sql-server,vb.net,datatable,Sql,Sql Server,Vb.net,Datatable,我有一个五列的数据表。我想创建一个新列,其中包含所有行的两个datetime字段之间的差异 数据表dtb最初是从sql server数据库填充的。 当前列为:ID、startDate、codeID、Param和endTime。 新列的持续时间是endTime和startDate之间的差值。 差异应该小于秒,因此如果可以通过sql实现,我假设datediff带有毫秒参数。从dtb中选择ID、startDate、codeID、Param、endTime、datediff(ms、endTime、sta

我有一个五列的数据表。我想创建一个新列,其中包含所有行的两个datetime字段之间的差异

数据表dtb最初是从sql server数据库填充的。 当前列为:ID、startDate、codeID、Param和endTime。 新列的持续时间是endTime和startDate之间的差值。
差异应该小于秒,因此如果可以通过sql实现,我假设datediff带有毫秒参数。

从dtb中选择ID、startDate、codeID、Param、endTime、datediff(ms、endTime、startDate)作为您的差异,这将是您的查询。是否要更改该表?

如果差异不是太大而导致溢出,则效果良好。这是正确的“对于毫秒,开始日期和结束日期之间的最大差异为24天20小时31分钟23.647秒。”来自msdn@NoAlias那么有没有一种方法可以用毫秒来计算这个范围之外的差异呢?好问题。在.Net中,这应该不是问题,但SQL是进行此更改的理想场所。是否可以在不影响实际数据库中的表的情况下将列添加到datatable中?是的,这就是我想要的查询,问题实际上是关于如何在vb中实现它以及如何在datatable中创建新列。您不必向datatable中添加新列,将查询添加到data adapter并用data adapter填充datatable,它应该得到该列。如果不起作用,请告诉我