怎么将虚拟串口的数据采集到数据库里面呢?
2014-12-30
展开全部
写成SELECT* FROM t WHERE object_id = decode(:OID,null,object_id,:OID) ;计划与NVL的一样(略)。现在的计划,ORACLE实际是转换成两条语句,然后进行类似于UNION ALL的操作。注意看计划中的FILTER操作,FILTER操作的子操作,如果是单个子操作,那么就会先执行FILTER(父操作),满足FILTER条件的,则执行子操作,否则不执行子操作(如果FILTER有2个子操作,则类似于NESTED LOOPS的操作)。看ID=2的FILTER条件是:OID IS NULL,ID=4的FILTER操作:OID IS NOT NULL,他们两个完全是互斥条件,所以,对于传入的:OID,肯定只能执行一个分支:要么执行全表扫描(传入NULL),要么执行索引扫描(传入非NULL值)。这也就实现了前面说的IF .... ELSE ....END IF的操作。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询