100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached
logo-home
GOAT Notes: Databases $2.99   Add to cart

Class notes

GOAT Notes: Databases

 27 views  0 purchase
  • Course
  • Institution

Are you a second-year Computer Science student at the University of Cape Town looking for a comprehensive study aid to excel in your practicals, tests, and exams? Look no further! These meticulously crafted digital lecture notes cover databases.

Preview 4 out of 70  pages

  • June 7, 2024
  • 70
  • 2023/2024
  • Class notes
  • Sonia berman
  • All classes
avatar-seller
BEN FROST

GOAT NOTES: DATABASES (CSC2001F)
Structured Query Language (SQL):

Introduction to Databases:

Databases vs Files:

While files are usually application specific databases are suitable for whole organisations.

Databases eliminate the data duplication and inconsistencies that arise when organisations rely on
large amounts of files.

When managing files every new need requires a new program to be developed and tested.

Multiple user file management is not efficient, secure, reliable or concurrent.

Database Management System (DBMS):

A DBMS keeps all the database’s data in one place and allows multiple users concurrent, easy and
safe access to it.

Facilitates CRUD operations:
Create
Retrieve
Update
Delete
Relational Database Example:

Relation -> Table
Tuple -> Row




1

, BEN FROST
SQL Query Guide:

* SEE SQL CHEAT SHEET FOR MORE *
Create:

Insert:
INSERT INTO <TableName>
VALUES (<Col1Value>, <Col2Value>, ... , <ColnValue>);

Insert (Nested): Data Types:
INSERT INTO <TableName> INTEGER, FLOAT,
VALUES (<SelectQuery>); ENUM(v,v,v,v,v), DOUBLE, REAL,
NUMERIC, BIT, VARCHAR, DATE
Table Creation: etc. (see slides)
CREATE TABLE <NewTableName> Null Handling:
NULL -> Allows Null Values
(<Col1Name> <DataType> <NullHandling>,
NOT NULL -> No Null Values
<Col2Name> <DataType> <NullHandling>,
...
<ColnName> <DataType> <NullHandling>,
PRIMARY KEY (<ColiName>, ... ,<ColjName>),
CHECK (<ColiName> IN (<SelectQueryOnPKeyOrigin>))
CHECK (<ColjName> IN (<SelectQueryOnPKeyOrigin>))
);

Retrieve:

Select Specific Columns of Row:
SELECT <Col1Name>, ... ,<ColnName>
FROM <TableName>;

Select All Columns of Row:
SELECT *
FROM <TableName>;

Select Ordered (Ascending):
SELECT <ColiName>
FROM <TableName>
ORDER BY <Col1Name>, ... ,<ColnName>;

Select Ordered (Descending):
SELECT <ColiName>
FROM <TableName>
ORDER BY <Col1Name>, ... ,<ColnName> DESC;

Select By Logical Condition:
SELECT <ColiName>

2

, BEN FROST
FROM <TableName>
WHERE <LogicalCondition>;


Logical Condition Configurations:
Standard Comparison:
WHERE <ColiName> = | <= | >= | < | > <Value>;
Starts With:
WHERE <ColiName> LIKE “<Value>%”;
Ends With: _ -> One Char Wildcard
WHERE <ColiName> LIKE “%<Value>”;
Contains:
WHERE <ColiName> LIKE “%<Value>%”;
&&:
WHERE <Logical1Condition> AND <Logical2Condition>;
||:
WHERE <Logical1Condition> OR <Logical2Condition>;
!:
WHERE NOT <LogicalCondition>;
Between:
WHERE <ColiName> BETWEEN <LowerBound> AND <UpperBound>;
Null/Not Null:
WHERE <ColiName> IS NULL; | WHERE <ColiName> IS NOT NULL;

Select Distinct Row:
SELECT DISTINCT <Col1Name>, ... ,<ColnName>
FROM <TableName>;

Select Top n Ordered Rows:
SELECT TOP <Value> <Col1Name>, ... ,<ColnName>
FROM <TableName>
ORDER BY <Col1Name>, ... ,<ColnName>;

Operations:
Mathematical:
Brackets:
()
Exponentiate:
POWER(<Value>, <Exponent>)
Division:
/
Multiplication:
*
Addition:
+
Subtraction:

3

, BEN FROST
-
Set Theory:
Union:
<SelectedSet> UNION <SelectedSet> Set functions all retain
Intersect: duplicates. Selected
<SelectedSet> INTERSECT <SelectedSet> relations’ structures must
match.
Except:
<SelectedSet> EXCEPT <SelectedSet>
Number Functions:

Sum:
SUM(<ColiName>)
Round:
ROUND(<Value>, <numberOfDecimalPlaces>)
Count:
COUNT(<ColiName>)
Minimum:
MIN(<ColiName>)
COUNT(*) includes NULL Values
Maximum:
MAX(<ColiName>) Everything else ignores them.
Average:
AVG(<ColiName>)
Floor:
INT(<Value>)
Generate Random Number:
RND(<ColiNameAsSeed>) * (<Range>) + <lowerLim>
Modular Division (%):
<Value1> MOD <Value2>
Integer Division:
<Value1> \ <Value2>

String Functions:

Substring From Left:
LEFT(<String>,<NumberOfChars>)
Substring From Right:
RIGHT(<String>,<NumberOfChars>)
Substring From Middle (to Right):
MID(<String>, <StartPosition> ,<NumberOfChars>)

COALESCE Function: COALESCE takes the first non-NULL
COALESCE(<Col1Name>, ... ,<ColnName>) value of the specified columns. (in order)

Deriving Functions As New Output Columns:
SELECT <FunctionOnTable> AS <NewColumnName>
FROM <TableName>;

4

The benefits of buying summaries with Stuvia:

Guaranteed quality through customer reviews

Guaranteed quality through customer reviews

Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.

Quick and easy check-out

Quick and easy check-out

You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.

Focus on what matters

Focus on what matters

Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!

Frequently asked questions

What do I get when I buy this document?

You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.

Satisfaction guarantee: how does it work?

Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.

Who am I buying these notes from?

Stuvia is a marketplace, so you are not buying this document from us, but from seller benfro764. Stuvia facilitates payment to the seller.

Will I be stuck with a subscription?

No, you only buy these notes for $2.99. You're not tied to anything after your purchase.

Can Stuvia be trusted?

4.6 stars on Google & Trustpilot (+1000 reviews)

76747 documents were sold in the last 30 days

Founded in 2010, the go-to place to buy study notes for 14 years now

Start selling
$2.99
  • (0)
  Add to cart