friends who need to learn can be downloaded via the Web: http://tadown.com/fs/byib0ens3hu207015/
Content Profile ...
This book, through a large number of examples, explains in detail the fundamental changes in the way of thinking that must be faced to improve SQL programming-from thinking in a process-oriented way to thinking in a data set. In addition, the book discusses the application of lookup tables, views, auxiliary tables, virtual tables in SQL Programming, and uniquely illustrates how time values are handled correctly in SQL systems and other technical difficulties in SQL programming.
This book is suitable for the vast number of database programmers and SQL Programmer learning Reference.
- Essays ... ( all 5 articles)
Popular/Latest/friends
- 0 useful Far East new June 2012-02-14
A Class of cookbook SQL Books
- 0 Cotton Candy 2016-04-10 with coffee
A lot of professional words have not heard, after reading the internet to search again. Took some time to glance over it, and when I get to know the database again, I should come back and look at the book. I'm still too young.
- 0 useful caff 2010-04-13
Too professional, not practical
- 0 useful trembling Little red- 2011-09-21
Simply over and over again, the DBA is definitely a magical profession!
- 0 Useful Life just a few autumn 2016-10-20
Several books written by the author about SQL are very similar, and some of the repetitive content
Author Profile ...
Joe Celko, a world-renowned database expert who has been a member of the ANSI SQL Standards Committee for over 10 years, is one of the world's largest readers of SQL books. He has written a series of columns and has supported and facilitated the development of database programming techniques and ANSI/ISO standards through his newsgroups. In addition to this book, he has written a number of SQL classics, including "SQL Programming Style", "SQL Doubts" and "SQL Authoritative guide", the Chinese version of the above works have been or will be published by the People's post and telecommunications press.
Catalog ...1th. SQL is a declarative language, not a procedural language 1
1.1 Different programming Models 1
1.2 Different data Models 3
1.2.1 "column" is not "field" 4
1.2.2 Line is not record 6
1.2.3 table is not a file 9
1.2.4 Relationship key is not a record locator 11
Type of 1.2.5 Key 12
1.2.6 Ideal attribute of the relationship key 14
1.2.7 is unique, but not constant 15
1.3 Table as Entity 15
1.4 Table as Relationship 16
1.5 statement is not a procedure 16
1.6 Molecular, atomic and sub-atomic data elements 17
1.6.1 Split Table 17
1.6.2 Split Column 18
1.6.3 Split time value 19
1.6.4 spurious non-first paradigm data 19
1.6.5 Molecular Data Element 21
1.6.6 Heterogeneous Data Elements 21
1.6.7 test for molecular type data 22
2nd hardware, data volume and maintenance database 23
2.1 Parallel Processing Technology 23
2.2 Low-cost main memory 25
2.3 Solid-State disk 25
2.4 Cheaper two-level memory and three-level memory 25
2.5 data is also changing 26
2.6 The way of thinking has not changed 26
3rd. Data access and records 29
3.1 Sequential Access 29
3.2 Index 30
3.2.1 Single-table index 31
3.2.2 Multi-table Index 31
3.2.3 Type of index 32
3.3 Hashing 32
3.3.1 Digital Selection 33
3.3.2 Division Hash 33
3.3.3 Multiplication Hash 33
3.3.4 Merging 33
3.3.5 Lookup of Tables 33
3.3.6 Conflict 34
3.4-bit Vector index 34
3.5 Parallel Access 34
3.6 Row and column storage 35
3.6.1 Row-based storage 35
3.6.2 column-based storage 35
3.7 Coupling Algorithm 36
3.7.1 nested loop join algorithm 37
3.7.2 sorting Merge Join Algorithm 37
3.7.3 Hash Join Algorithm 37
3.7.4 Shin Algorithm 38
The 4th chapter looks up the table 39
4.1 Name of the data element 40
4.2 Multi-parameter lookup table 42
4.3 Constants Table 43
4.4 Otlt or Muck table question 45
4.5 Definition of the correct table 48
5th Auxiliary Table 49
5.1 Sequence Table 49
5.1.1 Creating Sequence Table 51
5.1.2 Sequence Builder 51
5.1.3 Replacing Iteration Loops 52
5.2 Rank 54
5.2.1 is arranged recursively by recursion 54
5.2.2 is arranged by cross join 55
5.3 Functions 57
5.4 Implementing encryption by Table 59
5.5 Random Number 60
5.6 Interpolation Value 63
6th Chapter View 66
6.1 Mullins View Usage principles 66
6.1.1 efficient access and calculation 67
6.1.2 Renaming columns 68
6.1.3 Avoid hyperplasia 68
6.1.4 View Synchronization Principle 68
6.2 Updatable views and read-only views 69
6.3 Types of Views 71
6.3.1 single-table projection and limitation 71
6.3.2 computed Column 71
6.3.3 Converting Columns 72
6.3.4 Group View 72
6.3.5 Joint View 73
Coupling of the 6.3.6 view 74
6.3.7 nested views 75
6.4 Building a class model with tables 76
6.4.1 hierarchy of classes in SQL 77
6.4.2 Subclass 79 Working through assertion and Triger
6.5 How the database system handles views 79
List of 6.5.1 view columns 79
Materialization of 6.5.2 Views 80
6.6 Embedded Text Extension 80
6.7 with CHECK OPTION clause 81
6.8 Deleting views 86
6.9 Obsolete View Usage 87
Support for 6.9.1 domains 87
6.9.2 Table Expression views 88
6.9.3 view of a table-level check () constraint 88
6.9.4 per base table one view 88
7th VI Virtual Table 90
7.1 Derived Table 90
7.1.1 naming rules for columns 91
7.1.2 Scoping Rule 91
7.1.3 Public Table name 93
7.1.4 lateral () clause 94
7.2 CTE 96
7.2.1 non-recursive CTE 96
7.2.2 Recursive CTE 97
7.3 Temporary Table 98
7.3.1 Ansi/iso Standard 99
Model of 7.3.2 Manufacturers 99
7.4 Information Mode 99
7.4.1 INFORMATION_SCHEMA Statement 100
Quick list of 7.4.2 views and their uses 101
Declaration of the 7.4.3 Domain 102
7.4.4 Defining a pattern 102
7.4.5 Information_schema Assertion 105
The 8th chapter implements the complex function with the table 106
8.1 Functions without a simple formula 106
8.2 Using a table to implement check digit 107
Definition of 8.2.1 check digit 107
8.2.2 error detection vs. correction 108
8.3 Classification of the algorithm 109
8.3.1 Weighting and algorithm 109
8.3.2 Power and check bit 111
8.3.3 Luhn Algorithm 112
8.3.4 dihedral five check digit 113
8.4 Declaration is not a function, not a procedure 114
8.5 Data Mining for auxiliary tables 118
9th tense Table 120
9.1 Nature of the time 120
9.1.1 time period, not time sub 121
9.1.2 Subdivision Degree 122
9.2 ISO semi-open time model 123
9.2.1 with null means forever 125
9.2.2 Single time stamp table 125
9.2.3 Overlapping time interval 127
9.3 Status Conversion Table 134
9.4 Merge time interval 138
9.4.1 Cursors and triggers 139
9.4.2 OLAP Function Solution 140
9.4.3 CTE Solution 141
9.5 Calendar Table 142
9.5.1 with table for week value 142
9.5.2 Holidays List 143
9.5.3 reporting period 145
9.5.4 self-updating view 145
9.6 History Table 147
10th. Clean up data with non-first paradigm table 149
10.1 Repeating groups 149
10.2 Design Cleanup Table 155
10.3 Constraints used by cleanup operations 157
10.4 Calendar Cleanup 158
10.5 String Cleanup 159
10.6 Sharing SQL Data 161
Development of 10.6.1 Data 162
10.6.2 Database 162
10.7 Extracting, converting, and loading products 163
10.7.1 loading the Data Warehouse 164
10.7.2 all in SQL to complete 165
10.7.3 extracting, converting, and loading 166
The 11th chapter in the SQL Way of thinking 168
11.1 Warm-up exercises 168
11.1.1 Overall, not part 169
11.1.2 feature function 169
11.1.3 Early Lock Solution 171
11.2 Heuristic Method 172
11.2.1 to express the specification as a clear statement 172
11.2.2 Add "All ..." in front of the noun. The collection of "several words 172
11.2.3 Deleting a behavior verb in a problem statement 173
11.2.4 can still use stub 173
11.2.5 don't worry about the data display 174
11.2.6 first attempt requires specialized handling 175
11.2.7 don't be afraid to abandon yourself first attempt in DDL 175
11.2.8 restrain the impulse to use DML 176
11.2.9 do not think in the way of squares and arrows 176
11.2.10 drawing circles and Datasets 177
11.2.11 to learn specific products 178
11.2.12 the WHERE clause as "Super Amoeba" 178
11.2.13 using newsgroups, blogs, and the Internet 178
11.3 Do not use bit or Boolean tags in SQL 179
11.3.1 tag on the wrong layer 179
Improper use of 11.3.2 tags makes correct attributes difficult to understand 181
Chapter 12th Group Characteristics 184
12.1 is not grouped by equality 185
12.2 Use group, don't look what's inside 186
12.2.1 half-facing data set method 187
Solution for 12.2.2 Grouping 188
12.2.3 Solution Summary 189
12.3 Grouping by Time 190
12.3.1 Progressive Solution 190
12.3.2 Total Data Solution 192
12.4 Other techniques using the HAVING clause 192
12.5 GROUPING, Rollup and Cube 194
12.5.1 GROUPING SET clause 194
12.5.2 Rollup clause 195
12.5.3 CUBE clause 196
12.5.4 about the Super group footnote 196
12.6 window clause 196
12.6.1 PARTITION BY clause 197
12.6.2 ORDER BY clause 198
12.6.3 RANGE Clause 198
12.6.4 Programming Tips 199
13th. Turn technical specifications into Code 200
13.1 Bad SQL Flag 200
13.1.1 is the format of the code like another language 200
13.1.2 Sequential Access hypothesis 201
13.1.3 Cursor 201
13.1.4 Poor cohesion 201
13.1.5 table-valued Function 202
13.1.6 multiple names for the same data element 202
13.1.7 formats in the database 202
13.1.8 saving a date to a string 203
13.1.9 bit Flag, Boolean, and other computed columns 203
13.1.10 cross-column attribute split 203
13.1.11 attribute split across rows 203
13.1.12 cross-table attribute split 203
13.2 Workaround 204
13.2.1 Cursor-based solutions 204
13.2.2 half-oriented data set solution 205
13.2.3 fully DataSet-oriented solution 207
13.2.4 Benefits for DataSet code 207
13.3 explanation of vague explanations 207
13.3.1 regression to DDL 209
13.3.2 Modify the problem description 211
The 14th Chapter uses procedure and function call 213
14.1 Clear spaces in a string 213
14.1.1 Process Solutions # 213
14.1.2 Function Solution # 214
14.1.3 Function Solution # 217
14.2 aggregate function PRD () 218
14.3 Using long parameter lists in procedures and functions 220
15th of the line number 223
15.1 Process-Solution 223
15.2 OLAP Functions 226
15.2.1 Simple line number 226
15.2.2 RANK () and Dense_rank () 227
15.3 Knots 228
The 16th chapter holds the calculated data 231
16.1 Process-Solution 231
16.2 Relational Solutions 232
16.3 Other kinds of computational data 233
17th Chapter Constraint Class trigger 234
17.1 Calculating class triggers 234
17.2 complex constraints implemented through check () and Case constraints 235
17.3 Implementing complex constraints with views 237
17.4 Implementing view operations with constraints 239
17.4.1 3 Basic Operations 239
17.4.2 with CHECK OPTION clause 240
17.4.3 with CHECK option and check () clause 243
Behavior of the 17.4.4 view 244
17.4.5 Joint View 246
17.4.6 simple instead OF trigger 247
17.4.7 cautions on instead OF triggers 250
18th. Procedural solutions and data-driven solutions 251
18.1 Delete Letters in a string 251
18.1.1-Process Solutions 252
18.1.2 Pure SQL Solution 252
18.1.3 non-pure SQL solution 253
Two methods of solving 18.2 Sudoku 254
18.2.1-Process Solutions 254
18.2.2 data-driven workaround 254
18.2.3 processing known number 255
18.3 Data Constraint Method 257
18.4 Packing Problem 261
18.4.1 Process Solution 261
18.4.2 SQL Mode 262
18.5 Inventory Cost changes over time 264
18.5.1 UPDATE statement used in Inventory 267
18.5.2 back to boxing question 268
SQL Meditation PDF download