谢谢各位兄台,我的意思是加check是为了,我查询的时候判断到底是查订单表还是历史表 select * from V_Order where order_date = '2003-1-1' 比如说这样的话,就去查历史表,如果是order_date ='2003-6-1'那么不去查历史的了,这样就提高性能了,可是如何做呢?
请问,如果我要在order_date上加check如何加? alter table web_order with check(web_order_date >= '2003-10-03') 这样对吗?
alter table web_order add CHECK (web_order_date >= '2003-10-03')
alter table web_order add CHECK (web_order_date >= '2003-10-03') alter table web_order_history add CHECK (web_order_date < '2003-10-03') 我再建立一个View CREATE VIEW V_QUERY_WEB_ORDER AS select * from web_order union web_order_history go 然后我在程序中执行select * from V_QUERY_WEB_ORDER where web_order_date >' 2003-10-05'的话,会提高性能吗?
union all 不用union提高效率
应该是建立索引才是。
不知道是check效率高还是建个触发器这样效率高呢?
select * from V_Order where order_date = '2003-1-1' 比如说这样的话,就去查历史表,如果是order_date ='2003-6-1'那么不去查历史的了,这样就提高性能了,可是如何做呢?
alter table web_order with check(web_order_date >= '2003-10-03')
这样对吗?
alter table web_order_history add CHECK (web_order_date < '2003-10-03')
我再建立一个View
CREATE VIEW V_QUERY_WEB_ORDER
AS
select * from web_order union web_order_history
go
然后我在程序中执行select * from V_QUERY_WEB_ORDER where web_order_date >' 2003-10-05'的话,会提高性能吗?