Select T1.Nyr,(IsNull((T3.DP1-T2.DP1)-(T2.DP1-T1.DP1),0)) As DP1差值,(IsNull((T2.DP3-T2.DP1)-(T1.DP3-T1.DP1),0)) As DP3DP1差值 "
From DATA T1
Left Join DATA T2
On DateDiff(dd,T1.Nyr,T2.Nyr)=1
Left Join DATA T3
On DateDiff(dd,T2.Nyr,T3.Nyr)=1
上面的这段查询语句在SQL中可以实现,没问题,为什么在VB中有问题(如下).Private Sub Command1_Click()
Set db = New adodb.Connection
Set rs = New adodb.Recordset
db.ConnectionString = "driver={SQL SERVER};SERVER={OEM-XX};DATABASE=northwind;persist security info=false;userid=sa"
db.Open
rs.Open "Select T1.Nyr,(IsNull((T3.DP1-T2.DP1)-(T2.DP1-T1.DP1),0)) As DP1差值,(IsNull((T2.DP3-T2.DP1)-(T1.DP3-T1.DP1),0)) As DP3DP1差值 "
From DATA T1
Left Join DATA T2
On DateDiff(dd,T1.Nyr,T2.Nyr)=1
Left Join DATA T3
On DateDiff(dd,T2.Nyr,T3.Nyr)=1", db, adOpenStatic, adLockReadOnlySet DataGrid1.DataSource = rsEnd Sub主要问题是在FROM后面的DATA T1等会提示错误该怎么改?