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


Which SQL statement is the trump card to the senior software developer的更多相关文章

  1. Drop all the tables, stored procedures, triggers, constraints and all the dependencies in one SQL statement

    Is there any way in which I can clean a database in SQl Server 2005 by dropping all the tables and d ...

  2. java.sql.preparedstatement和java.sql.statement的区别

    本文转自CSDN,然后整理了一遍.原文出处:CSDN JDBC(java database connectivity,java数据库连接)的api中的主要的四个类之一的java.sql.stateme ...

  3. 直接放个DB2 SQL STATEMENT大全好了!

    SQL statements   This topic contains tables that list the SQL statements classified by type. SQL sch ...

  4. MyBatis3: Could not find SQL statement to include with refid ‘

    错误: org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.builder.Incompl ...

  5. ORA-06550:line 1,column 7;PLS-00201:indentifer '存储过程' must be declared;...PL/SQL Statement ignored 问题

    前段时间由于修改SMES系统,出现了一个问题. ORA-06550:line 1,column 7;PLS-00201:indentifer '存储过程' must be declared;...PL ...

  6. 什么是SQL statement?

    什么是SQL statement? 1.SQL SELECT statement - SELECT命令 REFER: What is SQL, and what are some example st ...

  7. Viewing the Raw SQL Statement(xcode で)

    Thanks to Core Data. Even without learning SQL and database, you’re able to perform create, select, ...

  8. Caused by: org.h2.jdbc.JdbcSQLException: Table "T_STUDENT_INFO" not found; SQL statement

    1.错误描述 org.hibernate.exception.SQLGrammarException: error executing work at org.hibernate.exception. ...

  9. Error 1313: RETURN is only allowed in a FUNCTION SQL Statement

    1.错误描述 14:07:26 Apply changes to rand_string Error 1313: RETURN is only allowed in a FUNCTION SQL St ...

随机推荐

  1. ORACLE数据库学习之体系结构

     Oracle体系结构 ORACLE数据库体系结构决定了oracle如何使用网络.磁盘和内存.包括实例(instance),文件(file)和进程(process不包括后台进程)三部分. 实例:每 ...

  2. EBS各个应用简称

     模块全称 Banking Center 模块简称 FPT 服务器目录 FPT_TOP Billing Connect CUE CUE_TOP CADView-3D DDD DDD_TOP CPG ...

  3. 熟悉java语言的基本使用:简单存款取款机制java实现

    最近一直没有项目做,于是我也不能这样闲着,我得开始学习新的技术,并且巩固以前自学的技术.以下就是我写的一个简单的java存取款代码,很简单,可能还有更简单的方法,目的是为了熟悉java的基本使用. p ...

  4. 如何在SpriteBuilder中设置对象的通用属性

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 我们知道在SpriteBuilder中可以为对象设置自定义类从 ...

  5. Android开发学习之路--Notification之初体验

    一般当我们收到短信啊,微信啊,或者有些app的提醒,我们都会在通知栏收到一天简单的消息,然后点击消息进入到app里面,其实android中有专门的Notification的类可以完成这个工作,这里就实 ...

  6. MySQl数据库必会sql语句加强版

    这篇承接上一篇<mysql必会sql语句>:http://blog.csdn.net/qq_32059827/article/details/51763950 这一篇属于加强版,问题和sq ...

  7. Mybatis执行CachingExecutor(六)

    前面几篇博客我们介绍了Excutor及抽象类BaseExecutor和实现类SimpleExecutor.BatchExecutor和ReuseExecutor: 博客列表: Mybatis执行Exe ...

  8. java造成内存泄露原因

    一.Java内存回收机制  不论哪种语言的内存分配方式,都需要返回所分配内存的真实地址,也就是返回一个指针到内存块的首地址.Java中对象是采用new或者反射的方法创建的,这些对象的创建都是在堆(He ...

  9. ffplay播放器移植VC的工程:ffplay for MFC

    本文介绍一个自己做的FFPLAY移植到VC下的开源工程:ffplayfor MFC.本工程将ffmpeg项目中的ffplay播放器(ffplay.c)移植到了VC的环境下.并且使用MFC做了一套简单的 ...

  10. Cocos2D:塔防游戏制作之旅(四)

    让我们看一下项目的结构.在TowerDefense文件夹,你将找到: 含有Cocos2D文件的libs文件夹 含有所有图片和声音的资源文件夹 现在,你已经准备就绪准备开始建造炮台之旅了 ;) 放置炮塔 ...