Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.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中按日期提取数据_Sql_Vb.net_Sql Server 2008 - Fatal编程技术网

如何在sql中按日期提取数据

如何在sql中按日期提取数据,sql,vb.net,sql-server-2008,Sql,Vb.net,Sql Server 2008,我有一个表truck_data,其中包含truck_no、diesel_filled、source、destination、amount等列 我只想取卡车号和柴油,这样它会显示每个卡车在一个月内填充的柴油的详细信息 请告诉我这方面的SQL查询-我已经尝试过这个查询,但它不起作用 SELECT truck_no, diesel_filled, date FROM truck-data ORDER BY date 请帮帮我 提前谢谢 我想要这样的输出 truck_no

我有一个表truck_data,其中包含truck_no、diesel_filled、source、destination、amount等列

我只想取卡车号和柴油,这样它会显示每个卡车在一个月内填充的柴油的详细信息

请告诉我这方面的SQL查询-我已经尝试过这个查询,但它不起作用

SELECT 
   truck_no, diesel_filled, date 
FROM 
   truck-data 
ORDER BY 
   date
请帮帮我

提前谢谢

我想要这样的输出

truck_no   1    2   3   4   5   6   7    8   9 etc(date from 1 to 31))
---------------------------------------------------------------------------
xyz       25   22  33  33  22  22  22  0   0 (diesel filled in truck order by date)
pqr       25   25  22  11  22  00  22  55  22
abc       21   15  12  14  13  00  22  00  00

你想要什么还不清楚。但我认为你把陈述和数据混为一谈了

SELECT truck_no,diesel_filled,date 
FROM truck-data 
ORDER BY date
将提供按日期排序的所有行。大概你不需要一些过滤器,只显示一个特定的月份

SELECT truck_no,diesel_filled,date 
FROM truck-data 
WHERE date >= 2014-10-05 AND date < 2014-11-01 ORDER BY date
以获取今年10月的所有行。如果此处的日期是DateTime列

然后您可以将其更改为:

SELECT truck_no,sum(diesel_filled),Day(date) 
FROM truck-data 
WHERE date >= 2014-10-05 AND date < 2014-11-01 
GROUP BY truck_no
ORDER BY date"
这将给你每天只有一排和一辆卡车。如果disel_filled是某种数值

然后在您的UI中,您必须以您喜欢的任何方式进行演示。例如,在类似上面描述的透视表中。 当然,您也可以在SQL中这样做,但通常这是表示层的工作。 如果您确实想在SQL中执行此操作,可以研究:
如果您使用的是MsSql

创建一个摆弄一些样本数据,这是真的不清楚。先生,请检查一下现在是crt吗?