我想我会发疯的。请帮助。
我有一个表格,其中包括Date,No,Turnover,TotalWin,Opencredit,Handpay,Billin,gamesplayed,我正在尝试在vb.net中编写sql,这将显示我前一天的价值,但我不能。这是我想要做的。
SELECT Meter.*
FROM
Meter AS Previous,
Turnover As Prev_turnover
WHERE Date = '
SELECT Max(Date)
FROM Meter AS Previous2
WHERE Previous2.Date < Date
AND Previous2.No = ‘No'
AND Previous.No = ‘No’
我在做错的地方出了什么问题我真的不知道。如果有人帮助将不胜感激。
由于
Ok Thomas我无法正确回答你的问题,因为我生命中的第一次尝试编写sql。我在MSAccess中这样做很容易。现在我得到了非常简单的错误,我想这个代码,但我再也找不到解决方案了。有什么不对。
SELECT [Date],[No],Turnover,TotalWin,GamesPlayed,CreditIn,BillIn,HandPay 来自仪表以前, 营业额为Prev_turnover WHERE [Date] ='SELECT Max([Date])FROM Meter As Previous2 WHERE Previous2。[Date]&lt; [Date] AND Previous。[No] = [No]'
那么这个错误呢?“没有为一个或多个必需参数赋予值”
现在我正在使用该代码:
SELECT Meter。[Date],Meter。[No],Meter.Turnover,Meter.TotalWin,Meter.GamesPlayed,Meter.CreditIn,Meter.BillIn,Meter.HandPay 来自仪表以前, 营业额为Prev_turnover WHERE Meter。[Date] ='SELECT Max(Meter。[Date])FROM Meter As Previous2 WHERE Previous2。[Date]
答案 0 :(得分:1)
你有什么具体问题?它返回错误的值还是只是给你一个错误?
我猜你只需要获得前几天的日期。如果是SQL Server中的情况,您可以像这样使用DATEADD函数:select DATEADD(day,-1,date)。您也可以在where子句或join子句中使用它。
答案 1 :(得分:0)
我找到了答案
SELECT Date, No, Turnover, [Total Win], [Games Played], [Credit In], [Bill In], [Hand Pay]
FROM tblMeter WHERE(日期&gt; = DATEADD(日,DATEDIFF(日,1,GETDATE()),0))和(日期&lt; DATEADD(日,DATEDIFF(日,0,GETDATE()),0))
向所有试图帮助我的人致敬。