1. Trang chủ
  2. » Công Nghệ Thông Tin

Joe Celko s SQL for Smarties - Advanced SQL Programming P81 pdf

10 350 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 10
Dung lượng 171,04 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

772 REFERENCES Other consortiums are: X/Open 1010 El Camino Real #380 Menlo Park, CA 94025 Phone: 415 323-7992 NOTE: the SQL Access Group is now part of X/Open NIST Technology A-266 Gai

Trang 1

772 REFERENCES

Other consortiums are:

X/Open

1010 El Camino Real #380 Menlo Park, CA 94025 Phone: (415) 323-7992 NOTE: the SQL Access Group is now part of X/Open NIST

Technology A-266 Gaithersberg, MD 20899 TPC Council

c/o Shanley Public Relations

777 North First Street #600 San Jose, CA 95112-6113 Phone: (408) 295-8894 Object Management Group

492 Old Connecticut Path Framingham, MA 01701 Phone: (508) 820-4300

Web Sites Related to SQL

The SQL home page is maintained by one of the X3H2 Committee members at:

www.jjc.com/sql_stnd.html

You can also get help with queries and technical stuff at:

www.inquiry.com/techtips/thesqlpro/index.html

Statistics

The American Statistical Association has their material online and you can find many articles on the computation of various statistics

www.amstat.org/publications/tas/

www.amstat.org/publications/technometrics/

Trang 2

Temporal Databases 773

Chan, Tony F., Golub, Gene H., and LeVeque, Randall J 1983 “Algo-rithms for Computing the Sample Variance: Analysis and

Recommenda-tions The American Statistician 37(3):242-247 ”

Welford, B P 1962 “Note on a Method for Calculating Corrected Sums

of Squares and Products.” Technometrics 4:419-420

Temporal Databases

Date, Chris, Darwen, H., and Lorentzos, N.A 2002 Temporal Data and the Relational Model San Francisco, CA: Morgan Kaufmann ISBN 1-55860-855-9

Jensen, C S Clifford, J., Elmasri, R., Gadia, S K., Hayes P., and Jajodia,

S (eds) 1994 “A Glossary of Temporal Database Concepts.”ACM SIG-MOD Record 23(1):52-64

Ozsoyoglu, G., and Snodgrass, R T 1995 “Temporal and Real-Time

Databases: A Survey.” IEEE Transactions on Knowledge and Data Engineer-ing 7(4):513-532

Snodgrass, R T (ed.), Ahn, I., Ariav, G., Batory, D., Clifford, J., Dyreson, C.E., Elmasri, R., Grandi F., Jensen C S., Kaefer W., Kline, N., Kulkarni, K., Leung, T Y C., Lorentzos, N., Roddick, J F., Segev, A., Soo, M D.,

and Sripada, S M 1995 The Temporal Query Language TSQL2 Norwell,

MA: Kluwer Academic Publishers

Snodgrass, R T., Boehlen, M H., Jensen, C S., and Steiner, A 1996

Adding Valid Time to SQL/Temporal Change proposal, ANSI X3H2-96-501r2, ISO/IEC JTC 1/SC 21/WG 3 DBL-MAD-146r2 At ftp:// ftp.cs.arizona.edu/tsql/tsql2/sql3/mad146.pdf.

——— 1996 Adding Transaction Time to SQL/Temporal Change

pro-posal, ANSI X3H2-96-502r2, ISO/IEC JTC1/SC21/WG3 DBL

MAD-147r2 At ftp://ftp.cs.arizona.edu/tsql/tsql2/sql3/mad147.pdf.

Snodgrass, R T and Jensen, C 1999 Temporal Databases San Fran-cisco, CA: Morgan Kaufmann ISBN 1-558604-365-9 The book is out of print, but the material is available on the Univerity of Arizona Web site, under the account of Dr Snodgrass.

Tansel, A., Clifford, J., Gadia, S K., Jajodia, S., Segev, A., and Snodgrass,

R T (eds.) 1993 Temporal Databases: Theory, Design, and Implementa-tion Database Systems and Applications Series Redwood City, CA:

Ben-jamin/Cummings Pub Co

Trang 3

774 REFERENCES

Tsotras, V J., and Kumar, A 1996 “Temporal Database Bibliography

Update.” ACM SIGMOD Record 25(1):41-51

Zaniolo, C Ceri, S., Faloutsos, C., Snodgrass, R T., Subrahmanian, V S.,

and Zicari, R 1997 Advanced Database Systems San Francisco, CA:

Mor-gan Kaufmann

New Citations

Microsoft Research Technical Report: MSR-TR-95-51 1995 “A Critique

of ANSI SQL Isolation Levels” by Hal Berenson, Phil Bernstein, Jim Gray, Jim Melton, Elizabeth O’Neil, and Patrick O’Neil

Bose, R C., and R J Nelson A Sorting Problem Journal of the ACM, vol 9 Codd, E F 1990 The Relational Model for Database Management: Version

2 Reading, MA: Addison Wesley.

Codd, E F 1979 “Extending the Database Relational Model to Capture

More Meaning.” ACM Transactions on Database Systems 4(4):397-434 Dijkstra, Edsger 1968 Go To Statement Considered Harmful Communi-cations of the ACM 11(3):147-148 Addresses old versus new JOIN syntax Gonzales, Michael L 2003 The IBM Data Warehouse New York: Wiley.

——— 2004 “The SQL Language of OLAP.”Intelligent Enterprise

(Sep-tember 18)

Hegeman, Frédérick 1993 “Sorting Networks,”The C/C++ User’s Journal

(February)

Knuth, Donald The Art Of Computer Programming vol 3 Larsen, Sheryl 1996 “Powerful SQL: Beyond the Basics.” DB2 Magazine (Winter) Article may be viewed online at www.db2mag.com/db_area/ archives/1996/q4/9601lar.shtml

Melton, Jim 1998 Understanding SQL’s Stored Procedures San Francisco, CA: Morgan Kaufmann ISBN 1-55860-461-8.

Moreau, Tom, and Ben-Gan, Itzik 2001 Advanced Transact-SQL for SQL Server 2000 Berkeley, CA: Apress ISBN 1-89311-582-8.

Pascal, Fabian 1988 OR 1998 “SQL Redundancy and DBMS

Perfor-mance.” Database Programming and Design 1(12)

The Unicode Consortium 2003 The Unicode Standard, Version 4.0 Read-ing, MA: Addison-Wesley ISBN 0-321-18578-1.

Trang 4

New Citations 775

Watson, E J 1962 “Primitive Polynomials (Mod 2).” Mathematics of Computation 16:368-369

Zemke, Fred, Kulkami, Krishna, Witkowski, Andy, and Lyle, Bob

“Introduction to OLAP Functions.” ANSI document

Trang 6

I n d e x

% character, 263 _ character, 263

A ABS() function, 473 Access methods, 732–33 bit vector indexes, 733 hashed indexes, 733 indexed access, 732–33 sequential access, 732 ACID properties, 720–22 atomicity, 720–21 consistency, 721 durability, 722 isolation, 721–22 Active Online Catalog, 62 Acyclic graphs, 682 loading, 682

as nested sets, 695–97

See also Graphs Additive congruential method, 45–46 Addresses, physical, 39

Ad hoc queries, 742 Adjacency list model, 624–28

altering table, 628 complex constraints, 625–27 converting, to nested set model, 637–39

converting nested set model to, 635

defined, 624 procedural traversal, 627–28

See also Tree Adjacency matrix defined, 705 model, 705–6

AGE() function, 658, 667 Aggregate functions, 439–75

AND, 475

AVG(), 444–49 bitwise, 473–75

COUNT(), 440–43 defined, 439 extrema, 313–14, 449–65 functioning of, 439–40 functions inside, 348

GREATEST(), 117, 462–65

Trang 7

778 I N D E X

HAVING clause and, 429

LEAST(), 117, 202, 462–65

LIST(), 465–68

MAX(), 449–50

MIN(), 449–50

nesting, 431, 433, 434

OR, 474–75

OUTER JOINs and, 348–49

PRD(), 468–73

SELECT clause, 324

single-column, 546

SUM(), 107, 443–44

Aggregation

aggregates, finding, 433

groups, 715–16

multilevel, in single query, 433

multiple levels, 431–35

Allocation blocks, 44

ALL predicate, 312, 313–14

converting to EXISTS predicate,

312

extrema functions and, 313–14

use of, 313

ALTER TABLE statement, 5, 7–8

ADD COLUMN clause, 8

ALTER COLUMN clause, 8

defined, 7

DROP COLUMN clause, 7

DROP CONSTRAINT clause, 8

syntax, 7

AND function, 475

ANY predicate, 312, 313

Approximate numeric values, 102–3

exponent, 102, 103

mantissa, 102–3

value, 103

ARCSIN() function, 202

Arithmetic

four-function, 108–9

NULLs and, 109–10

Arrays, 575–89

1NF violation, 575 comparing, in table format, 587– 89

crosstabs and, 585 flattening tables into, 585–87 languages and, 575

matrix operations, 581–85 via named columns, 576–79 via subscript columns, 580–81 Artificial keys, 89

Ascending Order Algorithm, 360 Assertions, 30

creating, 26 dropping, 25 uniqueness constraints and, 31 uses, 25

At least (>=) operator, 235

At most (<=) operator, 235 Atomicity property, 720–21 Attributes

constraint, 10 different names, 88 nonkey, 88

Attribute splitting avoiding, 31–34 forms, 31 rows, 33–34 tables, 31–33 Audit logs

maintaining, 158–60 modifying, 164 querying, 160–64 triggers and, 158 updates, 158 utility, 160 Auxiliary function tables, 493–506 advantages, 497

interpolation with, 504–6 inverse, 495–504

Auxiliary tables, 477–507 calendar, 673–75

Trang 8

I N D E X 779

defined, 477–85

global constants, 506–7

hierarchical, 490–91

inverse functions with, 495–504

lookup, 485–93

multiple parameter, 488–89

multiple translation, 487–88

OTLT, 491–93

range, 489–90

sequence, 477–85

setup form, 504

translation, 487

See also Tables

Average deviation, 528

Averages

across columns, 448–49

with empty groups, 446–48

values, 445

Average wait times, 660–61

AVG() function, 444–49

ALL keyword, 444

defined, 444

DISTINCT keyword, 444–45

in SELECT clause, 523

statistics and, 512

B BETWEEN predicate, 240, 273–75

avoiding, 285

defined, 273

indexing scheme choice, 275

interval end point, 278

programming tips, 274–75

results with empty sets, 274

results with NULL values, 274

searches with, 489

as two comparisons, 275

BIGINT numeric type, 102

Binary trees, 623

BIT data type, 104

Bitemporal tables, 164–67

defined, 164

history, 167 interpretation, 165 modifications, 165–66 transaction time, 166 transaction timestamps, 165 update, 165

See also Tables

BIT_LENGTH() function, 173 Bit vector indexes, 733

Bitwise aggregate functions, 473–75

AND, 475 defined, 473

OR, 474–75 Boole, George, 190 Boolean expressions conversion algorithm, 418

in RDBMS, 418–19 Bose-Nelson sort, 94, 95, 98 Bound queries, 557

Boyce-Codd Normal Form (BCNF),

73–75 defined, 74 tables, 73–74

See also Normal forms

BYTE data type, 104

C Calculated columns, 373 Calendar auxiliary table, 673–75 data, 675

forms, 674 with Julianized data columns, 567

See also Auxiliary tables Calendar(s)

corrections, 120–21 Julian, 120

personal, 643–45 realign, 120 standards, 119–23

CASE expressions, 143, 144, 247–59,

471 advantage, 229

Trang 9

780 I N D E X

COALESCE() function, 251

crosstabs by, 545

defined, 247

derived tables and, 422

ELSE clause, 249, 250

GROUP BY query, 252–53

LIKE predicates and, 266–67

logical predicates, 253–57

for multiple aggregation levels,

434–35

nesting, 248

NULLIF() function, 251–52

ORDER BY clause and, 333–36

searched, 248

syntax, 247–48

THEN clause, 249

UPDATE statement, 228–30

WHEN clause, 248, 249, 250

CASE tools

3NF with, 78

formal methods implementation,

87

CAST() function, 107, 457, 657

CEILING() function, 117, 514–15

Celko’s first median, 514–16

Celko’s second median, 517–19

Celko’s third median, 522–26

Character data types, 169–83

CHAR() data type, 169

CHAR_LENGTH() function, 173

CHECK() constraints, 12–14, 489

applied to whole table, 26

in complex expressions, 12

CREATE DOMAIN statement, 52

defined, 12

denormalization and, 93

IN() predicate and, 295–96

predicates in, 254

use example, 12–13

use of, 28

WITH CHECK OPTION clause and, 388–89

Circular references, 15 Class hierarchy modeling, 34–36

CLOSE statement, 56

COALESCE() function, 39, 111–13,

194

in column sums, 448 defined, 111

defining, 251 example uses, 111–12

in NATURAL LEFT OUTER JOINs, 344

use of, 40, 111 COBOL, 2, 4, 124, 125 Codd, Dr E.F., 36, 48, 50, 55, 61, 90,

359 Collation sequences, 169, 171 Colombian solution, 364–68 Columnar subqueries, 257 Columns

averages across, 448–49 calculated, 373

computed, 72 constraints, 5, 10–17 data types, 5

definitions, 4, 9 grouping, 425–26, 435–36

IDENTITY, 37–38 indexes, 746

INTEGER, single, 203–4 list, viewing, 379 minimum/maximum values, 448 minimum requirements, 6 missing values, 187–89 multiple, data elements, 201–9 named, 576–79

names, 4–5, 5, 347 names, preserving, 593 order, 329

repeating, 67–68

Trang 10

I N D E X 781

scalar expressions, 397

sequence, 549

SMALLINT, 205

sorting, 329

subscript, 580–81

sum of, 448

translated, 373–74

UNION of, 595–96

UNIQUE, 314

VARCHAR(15), single, 203

See also Tables

Common Table Expressions (CTEs),

397

paths with, 697–705

simplification, 705

Comparison operators, 235–40

data types, 235

defined, 23

symbols/meanings, 235

Comparisons

array, 587–89

row, 238–40

row expression, 289

VARCHAR strings, 450

Complex constraints, 625–27

Comprehensive Data Sublanguage

Rule, 62–63

Computed columns

grouping on, 435–36

transitive dependency, 72

See also Columns

Concatenation, 657

Concurrency control, 43, 722–26

five phenomena, 722–24

isolation levels, 724–26

logical, 729

optimistic, 727–29

pessimistic, 726–27

CONNECT TO statement, 719–20

Consistency property, 721

Constraints

attributes, 10

CHECK(), 12–14 column, 5, 10–17 complex, 625–27

CREATE ASSERTION, 25 deferrable, 10, 17

defined, 5, 10 DRI, 17

FOREIGN KEY, 21 grouping, 461 integrity, 63, 631 names, 10 nonsequenced, 137

NOT NULL, 11–12

PRIMARY KEY, 14

REFERENCES, 15–17, 36 schema-level, 25–29 sequenced, 134, 137 setting, 11

UNIQUE, 14 uniqueness, 31 Containment determination, 602 property, 634–35

CONTAINS operator, 602, 612–18 Contiguous events

boundary dates, 654 missing times, 652–58 Continuous time series, 648–52 Coordinated Universal Time (CUT),

122 Correlated subqueries, 310 calculation, 325 defined, 324

GROUP BY clause and, 456 with MAX() function, 451

in SELECT statement, 324–26, 436

See also Subqueries

Cost-based optimizers, 731 Counter ranges, 40

Ngày đăng: 06/07/2014, 09:20

TỪ KHÓA LIÊN QUAN