三张表 T_OrderInfo T_OrderDtl_Info T_Counter_Info主外键T_OrderInfo.OrderId=T_OrderDtl_Info.OrderIdT_OrderDtl_Info.CounterId=T_Counter_Info.CounterIdsql语句:select
T_OrderInfo.OrderId,T_OrderInfo.OrderPrice,T_OrderInfo.InsertTime
from
dbo.T_OrderInfo,dbo.T_OrderDtl_Info,T_Counter_Info
where T_OrderInfo.OrderId=T_OrderDtl_Info.OrderId
and T_OrderDtl_Info.CounterId=T_Counter_Info.CounterId
and T_Counter_Info.CounterId=1
and T_OrderInfo.InsertTime < getdate()
and T_OrderInfo.InsertTime > (getdate()-1)这个 怎么优化????
T_OrderInfo.OrderId,T_OrderInfo.OrderPrice,T_OrderInfo.InsertTime
from
dbo.T_OrderInfo,dbo.T_OrderDtl_Info,T_Counter_Info
where T_OrderInfo.OrderId=T_OrderDtl_Info.OrderId
and T_OrderDtl_Info.CounterId=T_Counter_Info.CounterId
and T_Counter_Info.CounterId=1
and T_OrderInfo.InsertTime < getdate()
and T_OrderInfo.InsertTime > (getdate()-1)这个 怎么优化????
T_OrderInfo.OrderId,T_OrderInfo.OrderPrice,T_OrderInfo.InsertTime
from
dbo.T_OrderInfo,dbo.T_OrderDtl_Info,T_Counter_Info
where T_OrderInfo.OrderId=T_OrderDtl_Info.OrderId
and T_OrderDtl_Info.CounterId=T_Counter_Info.CounterId
and T_Counter_Info.CounterId=1
and T_OrderInfo.InsertTime between(getdate()-1)
and getdate()
语句很简单,没有什么可优化的
select
T_OrderInfo.OrderId,T_OrderInfo.OrderPrice,T_OrderInfo.InsertTime
from
T_OrderInfo
inner join T_OrderDtl_Info on
T_OrderInfo.OrderId=T_OrderDtl_Info.OrderId
inner join T_Counter_Info on
T_OrderDtl_Info.CounterId=T_Counter_Info.CounterId
where T_Counter_Info.CounterId=1
and T_OrderInfo.InsertTime < getdate()
and T_OrderInfo.InsertTime > (getdate()-1)
这个是我后来写的 两段 哪个好点??
你的语句已经够简单的 需要做的是在连接字段OrderId,CounterId这些上加索引
SQL Server数据库的代码优化实例:
http://database.51cto.com/art/201108/285253.htm