Which SQL statement is the trump card to the senior software developer
MA Genfeng
(Guangdong Unitoll Services incorporated, Guangzhou 510300)
Abstract Within so many kinds of DML statements in SQL, I think four kinds of them, including Case When, Left Outer Join/Left Join / Right Outer Join /Right Join/ Inner Join, WITH AS and UNION/UNION ALL, are essential for the Database Developer.
In fact, there is a kind of SQL statement which might be the trump card to the senior software developer.I can say, immodestly, that quite a few software developers would never get the chance to use it solving a task that they might encount in their work . This is Full Outer Join.
Key words DB Query Analyzer; Full Outer Join; UDA; Data Access
0 Perface
Nowadays, the application of computers has penetrated into all spheres of society. Software developers have to meet with data process and data access.
Within so many kinds of DML statements in SQL, I think four kinds of them, including Case When, Left Outer Join/Left Join / Right Outer Join /Right Join/ Inner Join,WITH AS and UNION/UNION ALL, are essential for the Database Developer.
I've writen four articles correspond to the four kinds of DML statements above which have already been published in my CSDN Blog, Sina Blog,QQ Space, Sohu Blog, CSDN Resource and Baidu Library.The four articles in my CSDN Blog have more than 1000 views each. What's more,I've writen an article in which those four kinds of DML statements are all used for solving a task in my work. The views reached a record more than 11000.
http://blog.csdn.net/magenfeng/article/details/8126418
In fact, there is a kind of SQL statement which might be the trump card to the senior software developer.I can say, immodestly, that quite a few software developers would never get the chance to use it solving a task that they might encount in their work . This is Full Outer Join.
The FULL OUTER JOIN keyword returns all rows from the left table (table1) and from the right table (table2).
SQL FULL OUTER JOIN Syntax
SELECT column_name(s)
FROM table1
FULL OUTER JOINtable2
ON table1.column_name=table2.column_name;
1 Brief introduction DB Query Analyzer
DB Query Analyzer is presented by Master Genfeng, Ma from Chinese Mainland. It has English version named ‘DB Query Analyzer’ and Simplified Chinese version named .
DB Query Analyzer is one of the few excellent Client Tools in the world for its’powerful function, friendly interface, easy operation and applicability to every production of RDBMS.
It lets you query ODBC data sources, author SQL scripts and queries, return query results to a grid or free-form text or a file, retrieve ODBC driver information, execute multiple SQL scripts or stored procedures simultaneously, and more.
In the New products & Tools reviews of programmer second issue of 2007, DB Query Analyzer had been strongly recommended.
Now the Simplified Chinese version of DB Query Analyzer is the top 50 database application software in the famous software website http://xiazai.zol.com.cn/download_order/sub_550.html . In most case it lies the top 20 and it has been download more than 96,000 times.
63 technical articles about DB Query Analyzer have been published or been publishing in computer journal, BAIDU Library, the CSDN resource or my four blog-websites.
Download and install DB Query Analyzer. Then run it and input the DSN ’MGF_DB1’,User Name and Password.
2 What’s question to be solved
I work for Guangdong Unitoll Services incorporated, which is authorized to be engaged in Expressway Network Toll Collection in Guangdong Province. Each vehicle's toll data will be uploaded to our corporation by Every Highway Corporation. We must split all the tolls to each Highway Corporation by some rules. But another corporation developed a software system in which tolls splitting is also been done by their rules for a certain Highway Corporation.
So those Highway Corporations will often found many differences between thus two tolls splitting system.
I was arranged to find out what's the cause of the difference.
After careful thought, I decide to use two data granularity levels to describe the differences. The high granularity level tables show tolls splitting between those Highway Corporations. The low granularity level tables show detail splitting information of each vehicle's toll data in thus two tolls splitting system. I generated the result table data by Full Outer Join which will discover all the record
3 The process of the question be solved Detailedly
Because DB Query Analyzer access database/CSV/TXT/MS EXCEL by ODBC DSN, you should create ODBC DSN first.In here the process of the creation of ODBC DSN is omitted.
Tables in database include
dbo.SplitResultList Low granularity level table
dbo.SplitResultList_stat High granularity level table
dbo.TB_CASHACCURATESPLITRESULT1 Low granularity leveltable
dbo.tb_cashaccuratesplitresult1_stat High granularity level table
dbo.split_comp
Table dbo.SplitResultList and dbo.SplitResultList_statare according to another corporation.
Table dbo.TB_CASHACCURATESPLITRESULT1 and dbo. tb_cashaccuratesplitresult1_stat are according to our corporation.
Table dbo.split_compis generated by me to show tolls splitting for each tolls splitting system.
Figure 1 Run DB Query Analyzer to log in the databaseby ODBC
Figure 2 Tables in the database connected
Figure 3 Faster SQLScript generated by Object View to access SplitResultList
Figure4 Faster SQL Script generated by Object View to access TB_CASHACCURATESPLITRESULT1
Figure 5 Faster SQL Script generated by Object Viewto access SplitResultList_stat
Figure 6 Faster SQL Script generated by Object View to access tb_cashaccuratesplitresult1_stat
Figure7 SQL script with Full Outer Join to generate the detail level data of split_comp
selecta.*,b.* into split_comp
--selectcount(*)
from
(
select *
from tb_cashaccuratesplitresult1_stat
)as a full outer join
(
select *
from SplitResultListmid_stat
) as b
on a.outlistno=b.outlistno_xy anda.incroadno=b.incroadno_xy
;
Figure 8 Faster SQL Script generated by Object View to access split_comp
4 63 technical articles about DB Query Analyzer have been published or been publishing in computer journal, Baidu Library, the CSDN resource or my four blog-website.
The following 6 articles have been published in computer journal.
DB Query Analyzer to cancel a running SQL statement in Computer Era 12th issue of 2011 in Hangzhou.
DB Query Analyzer Returns Information in More Detail While Batch SQL Statement End of Execution in Computer Programming Skill & Maintenance 24th issue of 2011 in Beijing
The Application of the Transactions Control in DB2 with DB Query Analyzer in Computer Programming Skill & Maintenance 22nd issue of 2011 in Beijing.
How does DB Query Analyzer cancel the SQL statement committed to DBMS in Computer Engineering & Software 6th issue of 2011 in Tianjin.
The Application of the Transactions Control in Oracle with DB Query Analyzer in Microcomputer Applications 11th issue of 2011 in Shanghai.
DB Query Analyzer had been strongly recommended In the New products & Tools reviews of programmer 2nd issue of 2007.
The following 57 articles have been published or been publishing in Baidu Library, the CSDN resource or my four blog-website.
The DBMS that DB Query Analyzer Users often use cover all kinds of DBMS have been published.
How to configure ODBC DSN in Client to access remote DB2 for Windows
How to configure ODBC DSN to access local DB2 for Windows
Which SQL statement is the trump card to the senior software developer
Exe packer prevent DB Query Analyzer from being debugged have been published.
13 articles from The 1st tip of DB Query Analyze to The 13th skills of DB Query Analyzer have been published.
The table name must be enclosed in double quotation marks or square bracket while accessing EXCEL by DB Query Analyzer
DB Query Analyzer 5.04 download URL:
http://xiazai.zol.com.cn/detail/43/420901.shtml
http://www.unitedpowersoft.com/UpFile/DBQueryAnalyzer_English_503.rar
DB Query Analyzer Simplified Chinese version 5.04 download URL:
http://xiazai.zol.com.cn/detail/27/264455.shtml
Remarks :
Please uninstall the former version first, then install the latest version.
My blog-sites are http://blog.csdn.net/magenfeng
http://blog.sina.com.cn/magenfeng
http://user.qzone.qq.com/630414817
http://blog.csdn.net/magenfeng/article/details/8126418
The views of the article reached a record more than 11000