SQL

434 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
434
On SlideShare
0
From Embeds
0
Number of Embeds
66
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

SQL

  1. 1. SQL
  2. 2. SQL - History • Structured Query Language • SEQUEL from IBM San Jose • ANSI 1992 Standard is the version used by most DBMS today (SQL92) • Basic language is standardized across relational DBMSs. Each system may have proprietary extensions to standard.
  3. 3. SQL Uses • Database Definition and Querying – Can be used as an interactive query language – Can be imbedded in programs • Relational Calculus combines Select, Project and Join operations in a single command: SELECT
  4. 4. SQL Advanced
  5. 5. Aggregate Functions • Count • Avg • SUM • MAX • MIN • Others may be available in different systems
  6. 6. Branch Name City Director Asset John Singapore Singapore_2 1000000 Agus Arianto Jakarta Mona 4000000 George Jakarta Jakarta_2 1000000 Ng Wee Hiong Singapore Clementi 3000000 2
  7. 7. Name City Director Asset John Singapore Singapore_2 1000000 Agus Arianto Jakarta Mona 4000000 George Jakarta Jakarta_2 1000000 Ng Wee Hiong Singapore Clementi 3000000 4
  8. 8. Name City Director Asset John Singapore Singapore_2 1000000 Agus Arianto Jakarta Mona 4000000 George Jakarta Jakarta_2 1000000 Ng Wee Hiong Singapore Clementi 3000000 6750000
  9. 9. Name City Director Asset John Singapore Singapore_2 1000000 Agus Arianto Jakarta Mona 4000000 George Jakarta Jakarta_2 1000000 Ng Wee Hiong Singapore Clementi 3000000
  10. 10. Name City Director Asset John Singapore Singapore_2 1000000 Agus Arianto Jakarta Mona 4000000 George Jakarta Jakarta_2 1000000 Ng Wee Hiong Singapore Clementi 3000000
  11. 11. Views Name City Director Asset John Singapore Singapore_2 1000000 Agus Arianto Jakarta Mona 4000000 George Jakarta Jakarta_2 1000000 Ng Wee Hiong Singapore Clementi 3000000 Name City Director Asset John Singapore Singapore_2 1000000 Ng Wee Hiong Singapore Clementi 3000000
  12. 12. SQL Commands Syntax Review
  13. 13. SELECT • Syntax: – SELECT [DISTINCT] attr1, attr2,…, attr3 FROM rel1 r1, rel2 r2,… rel3 r3 WHERE condition1 {AND | OR} condition2 ORDER BY attr1 [DESC], attr3 [DESC]
  14. 14. SELECT • Syntax: – SELECT a.author, b.title FROM authors a, bibfile b, au_bib c WHERE a.AU_ID = c.AU_ID and c.accno = b.accno ORDER BY a.author ; • Examples in Access...
  15. 15. SELECT Conditions • = equal to a particular value • >= greater than or equal to a particular value • > greater than a particular value • <= less than or equal to a particular value • <> not equal to a particular value • LIKE “*term*” (may be other wild cards in other systems) • IN (“opt1”, “opt2”,…,”optn”) • BETWEEN val1 AND val2 • IS NULL
  16. 16. Relational Algebra Selection using SELECT • Syntax: – SELECT * WHERE condition1 {AND | OR} condition2;
  17. 17. Relational Algebra Projection using SELECT • Syntax: – SELECT [DISTINCT] attr1, attr2,…, attr3 FROM rel1 r1, rel2 r2,… rel3 r3;
  18. 18. Relational Algebra Join using SELECT • Syntax: – SELECT * FROM rel1 r1, rel2 r2 WHERE r1.linkattr = r2.linkattr ;
  19. 19. Subqueries • SELECT SITES.[Site Name], SITES. [Destination no] FROM SITES WHERE sites.[Destination no] IN (SELECT [Destination no] from DEST where [avg temp (f)] >= 78); • Can be used as a form of JOIN.
  20. 20. Using Aggregate functions • SELECT attr1, Sum(attr2) AS name FROM tab1, tab2 ... GROUP BY attr1, attr3 HAVING condition;
  21. 21. CREATE Table • CREATE TABLE table-name (attr1 attr- type PRIMARYKEY, attr2 attr-type, …,attrN attr-type); • Adds a new table with the specified attributes (and types) to the database.
  22. 22. Access Data Types • Numeric (1, 2, 4, 8 bytes, fixed or float) • Text (255 max) • Memo (64000 max) • Date/Time (8 bytes) • Currency (8 bytes, 15 digits + 4 digits decimal) • Autonumber (4 bytes) • Yes/No (1 bit) • OLE (limited only by disk space) • Hyperlinks (up to 64000 chars)
  23. 23. Access Numeric types • Byte – Stores numbers from 0 to 255 (no fractions). 1 byte • Integer – Stores numbers from –32,768 to 32,767 (no fractions) 2 bytes • Long Integer (Default) – Stores numbers from –2,147,483,648 to 2,147,483,647 (no fractions). 4 bytes • Single – Stores numbers from -3.402823E38 to –1.401298E–45 for negative values and from 1.401298E–45 to 3.402823E38 for positive values. 4 bytes • Double – Stores numbers from –1.79769313486231E308 to –4.94065645841247E– 324 for negative values and from 1.79769313486231E308 to 4.94065645841247E–324 for positive values. 15 8 bytes • Replication ID – Globally unique identifier (GUID) N/A 16 bytes
  24. 24. Oracle Data Types • CHAR (size) -- max 2000 • VARCHAR2(size) -- up to 4000 • DATE • DECIMAL, FLOAT, INTEGER, INTEGER(s), SMALLINT, NUMBER, NUMBER(size,d) – All numbers internally in same format… • LONG, LONG RAW, LONG VARCHAR – up to 2 Gb -- only one per table • BLOB, CLOB, NCLOB -- up to 4 Gb • BFILE -- file pointer to binary OS file
  25. 25. Creating a new table from existing tables • Syntax: – SELECT [DISTINCT] attr1, attr2,…, attr3 INTO newtablename FROM rel1 r1, rel2 r2, … rel3 r3 WHERE condition1 {AND | OR} condition2 ORDER BY attr1 [DESC], attr3 [DESC]
  26. 26. ALTER Table • ALTER TABLE table-name ADD COLUMN attr1 attr-type; • … DROP COLUMN attr1; • Adds a new column to an existing database table.
  27. 27. INSERT • INSERT INTO table-name (attr1, attr4, attr5,…, attrK) VALUES (“val1”, val4, val5,…, “valK”); • Adds a new row(s) to a table. • INSERT INTO table-name (attr1, attr4, attr5,…, attrK) VALUES SELECT ...
  28. 28. DELETE • DELETE FROM table-name WHERE <where clause>; • Removes rows from a table.
  29. 29. UPDATE • UPDATE tablename SET attr1=newval, attr2 = newval2 WHERE <where clause>; • changes values in existing rows in a table (those that match the WHERE clause).
  30. 30. DROP Table • DROP TABLE tablename; • Removes a table from the database.
  31. 31. Name City Director Asset John Singapore Singapore_2 1000000 Agus Arianto Jakarta Mona 4000000 George Jakarta Jakarta_2 1000000 Ng Wee Hiong Singapore Clementi 3000000

×