Many people do not understand what a database is or how it is different than an excel sheet
Data manipulation is neither natural nor visual
Joins, Aggregations, and Subqueries are an acquired taste
Errors are hard to parse
Don't get frustrated!
just understanding the concepts is powerful, even if you aren't creating queries yourself
Accuracy: When updating data, it is much less error prone
Security: Nuanced permissioning settings
Queryable: Allows you to "ask questions" of your data
Database Jargon (labels)
Spreadsheets vs Databases
This is a table
Database Jargon (keys)
Primary Key - used to uniquely identify a record.
Foreign Key - used to refer to a primary key in another table.
Schema - name for whole set of tables and their relationships.
Database Jargon (data types)
VARCHAR: Character string having variable length.
This data type treats everything as text. You can place numbers in here but adding them together would just attach them which is what you would expect with text.
a + b = ab 1 + 2 = 12
INTEGER: Whole numbers.
This data type only allows whole numbers inside of it. All math functions can be applied to it. Text cannot be placed here.
1 + 2 = 3
FLOAT: Numbers with decimal points.
This data type works the same as INTEGER but allows decimal values.
1.1 + 2.2 = 3.3
BOOLEAN: True or False value.
This data type can be either True or False. This is useful for setting binary characteristics or status about some data.
Is the house on fire? True or False (1 or 0)?
Database Jargon (data types - continued)
DATE: Date / Time value.
This data type contains date and/or time information which allows you to perform calculations related to date/time.
How many dats are between 1/1/19 and 2/4/19? (34)
NULL: This means there is no value in the cell (and this can show up in any of the above types)
This data type is useful for showing the absence of data. A blank cell and a Null cell are different. Null is ignored by aggregations and it is easy to filter for. Blank values or 0s would be included in aggregations and can be more difficult to detect.