Oracle performance optimization operation 12: Use Case statements to merge multiple scans, oraclecase

Source: Internet
Author: User
Tags case statement

Oracle performance optimization operation 12: Use Case statements to merge multiple scans, oraclecase

We often have to calculate different aggregation based on multiple sets of data tables. For example, the following example uses three independent queries:

Select count (*) from emp where sal <1000; select count (*) from emp where sal between 1000 and 5000; select count (*) from emp where sal> 5000;

In this way, we need to perform three full table queries, but if we use the case statement:

Select count (sale when sal <1000 then 1 else null end) count_poor, count (sale when between 1000 and 5000 then 1 else null end) count_blue_collar, count (sale when sal> 5000 then 1 else null end) count_poorfrom emp;

In this way, the query results are the same, but the execution plan only performs a full table query once.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.