Based on the generic data type, esProc
provides the sequence and the Table Sequence for implementing the complete set-lizing and
the much more convenient relational queries.
The relation between the department and the
employee is one-to-many and that between the employee and the SSN (Social Security
Number) is one-to-one. Everything is related to everything else in the world. The
relational query is the access to relational dataset with the mathematical
linguistics. Thanks to the associated query, the relational database (RDBMS) is
extensively adopted.
I Case and Comparison
Case
There is a telecommunications enterprise that
needs to perform this analysis: to find out the annual outstanding employees
whose line manager having been awarded the president honor. The data are from
two tables: the first is the department table mainly consisting of deptName and manager fields; and the
second is the employee table mainly consisting of the empName, empHonor, and empDept
fields;
For empHonor, three kinds of values can be
obtained: First, null value; Second, ”president's award” and PA for short;
Third, ”employee of the year” and EOY for short; The corresponding relations
are usually belong to either of the two below groups: empDept & deptName, and
Manager & empName.
SQL Solution
SELECT A.*
FROM employee A,department
B,employee C
WHERE A.empDept=B.deptName AND
B.manager=C.empName AND A.empHonor=‘EOY’ AND C.empHornor=‘PA’
SQL join query
can be used to solve such problems. In this case, we choose the nested query
that is brief and clear. The association statements after “where” have established
one-to-many relation between deptName and empDept, and the one-to-one relation
between manager and empName.
esProc
Solution
employee.select(empHonor:"EOY",empDept.manager.empHornor:"PA")
The esProc solution is quite intuitive: select
the employees with EOY on condition that the line respective managers of these
employees have won the “PA”.
Comparison
Regarding the SQL solution, the SQL
statements is lengthy and not intuitive. Actually, the complete associated
query statement is “inner join…on…”. We have put it in a rather simplified way
or the statements would be even harder to comprehend.
Regarding the esProc solution, the esProc fields
are of generic type, which can point to any data and dataset. Therefore, you
can simply use ”.” symbol to access the associated table directly. By representing
in such intuitive and easy-to-understand way, esProc users can convert the
complicated and lengthy SQL statement for multiple table association to the
simple object access. This is achievable if using SQL.
II Function Description:
Generic Data Type
The data in esProc are all of generic type,
that is, the data types are not strictly distinguished. Therefore, a data can
be a simple data like “1” or “PA” ,or a set like [1,” PA”], or a set composed
of sets like the database records.
Sequence
A sequence is a data structure specially
designed for the mass data analysis. It is similar to the concept of “array +
set” in the senior language. That is to say, esProc users can assess members of
any type according to its serial number, and perform the intersection, union,
and complementary set operations on these members. The sequence is
characterized with two outstanding features: generic type, and being ordered.
For example, let’s suppose that the sequence
A is a set of line managers, and the sequence B is a set of award-winning
employees. Then, the award-winning departments can be computed as a result of A^B.
The top three departments can be obtained as a result of [1,2,3] (Please refer
to other documents for the characteristics of being ordered).
esProc provides a great many of easy-to-use
functions for sequence. The analysis will be greatly simplified if you grasped
the use of sequence well.
Table Sequence
The Table Sequence is a sequence of
database structure. As a sequence, it is characterized by being generic and
ordered. In addition, Table Sequence also inherited the concept of database table that allows
for the access to data with the field and the record.
The characteristics of generic type allow
for the associated query in a quite convenient way in which the access to the
record of associated table is just like the access to object. For example, to
access the line manager of a certain employee, you can just compose “empDept.manager”.
By comparison, the counterpart SQL syntax requires quite lots of complex association statements: “from…where…” or “left outer/right outer/inner join…on…”
Moreover, the characteristics of being ordered
are quite useful and convenient for solving the tough computational problems relating
to the Table Sequence and serial numbers, such as computing the top N, year-on-year
statistics, and link relative ratio analysis.
III Advantages
The Access Syntax to Convert Complexity to Simplicity
esProc users can use ”.” to access the record
in the associated table. Compared with the lengthy and complicated association
syntax of SQL, such access method and style is much easier.
Intuitive Analysis is Ideal for Business Specialist
Analyzing from the business aspect, the business
specialist can reach the result more correctly and rapidly. esProc users can
access to the associated data in an intuitive way following the business descriptions
and thus it is ideal for business specialist.
Easy to Analyze and Solve Problem
The
sequence and table sequence of esProc is fit for processing the mass data. Even
for the complicated multiple-table association, esProc users can solve the
problems conveniently in the process of data analysis.About esProc: http://www.raqsoft.com/product-esproc
没有评论:
发表评论