Select A.LockUser ,MAX(C.NetName) NetName ,
Sum(A.Count) Count,Sum(A.Count*(a.price +a.extra_petrol)) SumMoney From Net_LockTickets A
Left Join BT_NetUser C On A.LockUser =C.NetCode
Where A.Locktime>=@StartTime And A.Locktime<@EndTime+1
And A.State='3' And A.scode Like dbo.dovalue(@stationCode) And A.LockUser In (@NetCode)
And A.scode In ( Select StattionCode From B_Station Where CityCode In ( Select CityCode From BT_Citey Where AreaCode Like dbo.dovalue(@Area) ))
And A.scode In (Select SCode From [qspt].[dbo].[StationSysPerson] Where SysPersonId= @CanQuerySCode)
Group By A.LockUser Order By A.LockUser
我想问下这里的like dbo.dovalue是什么意思呢?
------解决思路----------------------
AreaCode LIKE dbo.dovalue(@Area)
1.dbo.dovalue(@Area)
这个应该是函数,然后输入变量@area,作为这个函数dovalue的参数,会返回一个值
2. areacode like dbo.dovalue(@Area)
其实就是 类似于:
select * from tb where areacode like ‘abcd’
这样子,而abcd 假设是 dbo.dovalue(@Area) 的返回值,就是模糊匹配,这里少了%,可能 在dbo.dovalue(@Area)里会返回%这个字符。
也可以写成这样,都是模糊匹配:
select * from tb where areacode like ‘abcd%’ 或者
select * from tb where areacode like ‘abcd’ +‘%’
------解决思路----------------------
是自定义出来的。