SQL Tutorials 10 hours
- Get link
- X
- Other Apps
Certainly! Here's a tutorial in the form of a flash card table for MySQL SQL commands:
SQL Command & Explanation | SQL Example |
SELECT - Retrieves data from one or more tables. | SELECT first_name, last_name FROM employees; |
FROM - Specifies the table to retrieve data from. | SELECT first_name FROM employees; |
WHERE - Filters records based on a condition. | SELECT * FROM employees WHERE age > 30; |
AND, OR - Combine conditions in a WHERE clause. | SELECT * FROM employees WHERE age > 30 AND department = 'HR'; |
ORDER BY - Sorts the result set. | SELECT * FROM employees ORDER BY last_name ASC; |
INSERT INTO - Adds new records into a table. | INSERT INTO employees (first_name, last_name) VALUES ('John', 'Doe'); |
UPDATE - Modifies existing records in a table. | UPDATE employees SET age = 31 WHERE first_name = 'John' AND last_name = 'Doe'; |
DELETE - Removes records from a table. | DELETE FROM employees WHERE last_name = 'Doe'; |
CREATE DATABASE - Creates a new database. | CREATE DATABASE new_database; |
DROP DATABASE - Deletes an existing database. | DROP DATABASE old_database; |
CREATE TABLE - Creates a new table. | CREATE TABLE employees (id INT PRIMARY KEY, first_name VARCHAR(50), last_name VARCHAR(50)); |
DROP TABLE - Deletes an existing table. | DROP TABLE old_table; |
ALTER TABLE - Modifies an existing table structure. | ALTER TABLE employees ADD COLUMN age INT; |
DISTINCT - Removes duplicate rows from the result set. | SELECT DISTINCT department FROM employees; |
COUNT - Counts the number of rows in a result set. | SELECT COUNT(*) FROM employees; |
GROUP BY - Groups rows that have the same values. | SELECT department, COUNT(*) FROM employees GROUP BY department; |
HAVING - Filters the results of a GROUP BY. | SELECT department, COUNT(*) FROM employees GROUP BY department HAVING COUNT(*) > 10; |
INNER JOIN - Combines rows from two tables based on a related column. | SELECT employees.first_name, departments.name FROM employees INNER JOIN departments ON employees.department_id = departments.id; |
LEFT JOIN - Combines rows from the main table and the matching rows from a secondary table. | SELECT employees.first_name, departments.name FROM employees LEFT JOIN departments ON employees.department_id = departments.id; |
RIGHT JOIN - Opposite of LEFT JOIN. Combines rows from the secondary table and the matching rows from the main table. | SELECT employees.first_name, departments.name FROM employees RIGHT JOIN departments ON employees.department_id = departments.id; |
UNION - Combines the result of two or more SELECT statements (removes duplicates). | SELECT first_name FROM employees UNION SELECT first_name FROM managers; |
LIMIT - Limits the number of rows in the result set. | SELECT * FROM employees LIMIT 10; |
This table is a brief summary and focuses on some of the most commonly used SQL commands. SQL is a very rich language, and there are many advanced features, functions, and commands not covered in this flash card format. If you're looking to learn SQL in depth, it would be beneficial to explore each of these commands in detail, practice with real-world scenarios, and also dive into other advanced topics.
SQL Command & Explanation | SQL Example |
BETWEEN - Filters records within a specific range. | SELECT * FROM employees WHERE salary BETWEEN 50000 AND 60000; |
LIKE - Searches for a specified pattern in a column. | SELECT * FROM employees WHERE first_name LIKE 'Jo%'; |
IN - Filters records based on a list of values. | SELECT * FROM employees WHERE department IN ('HR', 'Finance'); |
NOT - Displays records where the condition is NOT TRUE. | SELECT * FROM employees WHERE NOT age = 30; |
IS NULL - Filters records with NULL values. | SELECT * FROM employees WHERE address IS NULL; |
IS NOT NULL - Filters records without NULL values. | SELECT * FROM employees WHERE address IS NOT NULL; |
AS - Renames a column or table with an alias. | SELECT first_name AS FirstName, last_name AS LastName FROM employees; |
UNION ALL - Combines the result of two or more SELECT statements (does not remove duplicates). | SELECT first_name FROM employees UNION ALL SELECT first_name FROM managers; |
ANY - Compares a value to any value in another result set. | SELECT * FROM products WHERE price > ANY (SELECT price FROM discounted_products); |
ALL - Compares a value to all values in another result set. | SELECT * FROM products WHERE price > ALL (SELECT price FROM discounted_products); |
EXISTS - Tests for the existence of any record in a subquery. | SELECT first_name FROM employees WHERE EXISTS (SELECT department FROM departments WHERE name = 'HR'); |
CASE - Sets a condition in a query. | SELECT first_name, CASE WHEN age < 30 THEN 'Young' ELSE 'Old' END AS age_group FROM employees; |
TRUNCATE - Removes all records from a table (without deleting the table itself). | TRUNCATE TABLE temporary_data; |
INDEX - Creates or deletes an index in a table. | CREATE INDEX idx_lastname ON employees (last_name); |
AUTO_INCREMENT - Automatically increases the value of a field in a table. | CREATE TABLE persons (ID int NOT NULL AUTO_INCREMENT, name varchar(255), PRIMARY KEY (ID)); |
DATE - Extracts the date part of a date or date/time expression. | SELECT DATE(datetime_column) FROM table_name; |
AVG - Returns the average value of a numeric column. | SELECT AVG(salary) FROM employees; |
SUM - Returns the total sum of a numeric column. | SELECT SUM(salary) FROM employees; |
SQL Command & Explanation | SQL Example |
MIN - Returns the smallest value in a numeric column. | SELECT MIN(salary) FROM employees; |
MAX - Returns the largest value in a numeric column. | SELECT MAX(salary) FROM employees; |
ROUND - Rounds a number to the specified number of decimals. | SELECT ROUND(salary, 2) FROM employees; |
CHAR_LENGTH - Returns the character length of a string. | SELECT first_name, CHAR_LENGTH(first_name) AS length FROM employees; |
UPPER - Converts a string to upper-case. | SELECT UPPER(first_name) FROM employees; |
LOWER - Converts a string to lower-case. | SELECT LOWER(first_name) FROM employees; |
NOW - Returns the current date and time. | SELECT NOW(); |
DATE_FORMAT - Formats a date as specified. | SELECT DATE_FORMAT(birthdate, '%M %d %Y') AS formatted_date FROM employees; |
CONCAT - Concatenates two or more strings. | SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM employees; |
COALESCE - Returns the first non-null value in a list. | SELECT COALESCE(NULL, 'default', 'value') AS result; |
CAST - Converts one data type to another. | SELECT CAST(age AS CHAR) AS age_string FROM employees; |
FOREIGN KEY - Ensures referential integrity in the relationship between two tables. | ALTER TABLE orders ADD FOREIGN KEY (employee_id) REFERENCES employees(id); |
PRIMARY KEY - Uniquely identifies each record in a table. | CREATE TABLE employees (id INT PRIMARY KEY, name VARCHAR(255)); |
CHECK - Ensures that the values in a column meet a specific condition. | CREATE TABLE employees (id INT PRIMARY KEY, age INT CHECK(age >= 18)); |
DEFAULT - Sets a default value for a column. | CREATE TABLE employees (id INT PRIMARY KEY, country VARCHAR(255) DEFAULT 'USA'); |
INDEX - Used to create and retrieve data from the database quickly. | CREATE INDEX idx_lastname ON employees (last_name); |
VIEW - A virtual table based on the result-set of an SQL statement. | CREATE VIEW view_name AS SELECT column1, column2 FROM table_name WHERE condition; |
SQL Command & Explanation | SQL Example |
SUBSTRING - Extracts a part of a string. | SELECT SUBSTRING(first_name, 1, 3) AS short_name FROM employees; |
REPLACE - Replaces all occurrences of a substring. | SELECT REPLACE(email, '@company.com', '@newdomain.com') FROM employees; |
LEFT - Extracts a number of characters from a string (starting from left). | SELECT LEFT(first_name, 3) FROM employees; |
RIGHT - Extracts a number of characters from a string (starting from right). | SELECT RIGHT(first_name, 2) FROM employees; |
LTRIM and RTRIM - Removes leading or trailing spaces. | SELECT LTRIM(column_name), RTRIM(column_name) FROM table_name; |
CURDATE - Returns the current date. | SELECT CURDATE(); |
CURTIME - Returns the current time. | SELECT CURTIME(); |
DATEDIFF - Returns the difference between two dates. | SELECT DATEDIFF('2023-12-31', CURDATE()) AS days_until_end_of_year; |
ABS - Returns the absolute value. | SELECT ABS(-5) AS absolute_value; |
MOD - Returns the remainder of a division. | SELECT MOD(10, 3) AS remainder; |
CEIL or CEILING - Rounds a number up to the nearest whole number. | SELECT CEIL(7.8) AS rounded_up; |
FLOOR - Rounds a number down to the nearest whole number. | SELECT FLOOR(7.8) AS rounded_down; |
RAND - Generates a random number. | SELECT RAND(); |
LENGTH - Returns the length of a string in bytes. | SELECT LENGTH(first_name) FROM employees; |
POSITION - Returns the position of a substring in a string. | SELECT POSITION('world' IN 'Hello world') AS position; |
TRIM - Removes specified prefixes or suffixes from a string. | SELECT TRIM(' ' FROM column_name) FROM table_name; |
DAY, MONTH, YEAR - Extracts the day, month, or year from a date. | SELECT DAY(birthdate), MONTH(birthdate), YEAR(birthdate) FROM employees; |
CONCAT_WS - Concatenates multiple strings with a separator. | SELECT CONCAT_WS('-', year, month, day) AS formatted_date FROM date_table; |
LAST_INSERT_ID - Returns the last AUTO_INCREMENT id used. | INSERT INTO table_name (name) VALUES ('John'); SELECT LAST_INSERT_ID(); |
SQL Command & Explanation | SQL Example |
STR_TO_DATE - Converts a string into a date. | SELECT STR_TO_DATE('2023,10,24','%Y,%m,%d'); |
DAYNAME - Returns the name of the weekday. | SELECT DAYNAME(CURDATE()) AS weekday_name; |
DAYOFWEEK - Returns the weekday index of a date (1=Sunday, 7=Saturday). | SELECT DAYOFWEEK(CURDATE()) AS weekday_index; |
EXTRACT - Extracts parts from a date. | SELECT EXTRACT(YEAR FROM '2023-10-24') AS year; |
TIME_FORMAT - Formats the time. | SELECT TIME_FORMAT('14:50:00', '%h:%i %p') AS formatted_time; |
CASE - Sets conditions within queries. | SELECT CASE WHEN salary > 50000 THEN 'High' ELSE 'Low' END AS salary_grade FROM employees; |
IFNULL - Returns an alternative value if the expression is NULL. | SELECT IFNULL(address, 'No Address') FROM employees; |
COALESCE - Returns the first non-NULL value in a list. | SELECT COALESCE(first_name, last_name, 'Guest') FROM users; |
CHAR - Converts an ASCII value to a character. | SELECT CHAR(65); (Result: 'A') |
ASCII - Returns the ASCII value of a character. | SELECT ASCII('A'); (Result: 65) |
REVERSE - Reverses a string. | SELECT REVERSE('SQL'); (Result: 'LQS') |
STARTS WITH - Checks if a string starts with a specified prefix. | SELECT name FROM users WHERE name LIKE 'Jo%'; |
ENDS WITH - Checks if a string ends with a specified suffix. | SELECT name FROM users WHERE name LIKE '%son'; |
LOCATE - Finds the position of the first occurrence of a substring. | SELECT LOCATE('or', 'Hello World'); (Result: 8) |
GET_LOCK - Tries to get a lock with a given name. | SELECT GET_LOCK('lock_name', 10); |
RELEASE_LOCK - Releases the lock with the given name. | SELECT RELEASE_LOCK('lock_name'); |
SQL Full Course In 10 Hours
Basic SQL Queries | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Normalization in SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers in SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Based on the document "SQL Full Course In 10 Hours.txt", here's a summary of the advantages and disadvantages of using triggers in SQL: ### Advantages of Triggers 1. **Forced Security Protocols**: Triggers help enforce security protocols on the tables within a database. 2. **Data Integrity**: They ensure the integrity of the data within the database by performing checks or actions automatically. 3. **Automated Responses**: Triggers can automatically respond to changes within a database, ensuring that all necessary updates and checks are performed immediately. 4. **Error Handling**: They can handle errors from the database layer, potentially reducing the amount of erroneous data. 5. **Data Change Insights**: Triggers can be used to monitor and log changes in the data, which is useful for auditing purposes. ### Disadvantages of Triggers 1. **Limited Validation Capabilities**: While triggers are great for extended validation, they cannot replace all types of data validation constraints such as NOT NULL, UNIQUE, CHECK, and FOREIGN KEY. 2. **Performance Overhead**: Triggers can increase the overhead on a database system because they are additional processes that must be executed. 3. **Complexity in Troubleshooting**: Since triggers execute automatically and can be invisible to client applications, they can make troubleshooting database issues more complex. These points give a balanced view of how triggers function within SQL databases, helping users make informed decisions about when and how to use them effectively. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Joins in SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Functions in SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Stored procedure | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User-Defined Functions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Interview Question & Answers | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL For Data Science | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
### Introduction to SQL for Data Science - **Definition**: Explain what SQL (Structured Query Language) is and its role in data science for handling and analyzing data stored in relational databases. - **Importance**: Discuss the significance of SQL in data science, emphasizing its utility in data manipulation, querying, and reporting. ### Basic SQL Concepts - **Databases and Tables**: Introduction to databases and how data is organized in tables. - **Data Types**: Overview of common SQL data types and their applications in data science. - **SQL Syntax**: Basic syntax for writing SQL queries, focusing on readability and structure. ### SQL Operations - **Creating Databases and Tables**: Simple SQL commands to create databases and tables, tailored for data science projects. - **CRUD Operations**: Cover the essentials of Create, Read, Update, and Delete operations in SQL.
### Data Retrieval Techniques - **SELECT Statement**: How to retrieve data using SELECT, focusing on selecting specific columns and filtering rows with WHERE clauses. - **Aggregation Functions**: Introduction to functions like COUNT, SUM, AVG, MIN, and MAX for basic data analysis. - **Sorting and Filtering**: Using ORDER BY and WHERE to sort and filter datasets, crucial for data exploration. ### Advanced Data Manipulation - **JOIN Operations**: Explanation of INNER JOIN, LEFT JOIN, RIGHT JOIN, and FULL JOIN with practical examples relevant to data science. - **Subqueries and Aliases**: How to use subqueries and aliases to simplify complex queries and enhance readability. - **Grouping Data**: Using GROUP BY and HAVING clauses to aggregate data, which is essential for statistical analysis in data science. ### SQL Functions - **Scalar and Aggregate Functions**: Detailed examples of both scalar functions (like UPPER, LOWER) and aggregate functions (like COUNT, AVG). - **Date and Time Functions**: How to handle date and time data, which is common in time-series analysis. ### Optimization Techniques - **Indexes**: Introduction to indexes and how they improve query performance, important for large datasets in data science. - **Views**: Using views to simplify access to frequently used and complex queries. ### Integrating SQL with Data Science Tools - **SQL and Python**: Demonstrate how SQL can be integrated with Python using libraries like pandas and sqlalchemy for data analysis. - **SQL in BI Tools**: Brief overview of using SQL within popular Business Intelligence tools like Tableau or Power BI for data visualization. ### Practice Problems - **Example Queries**: Provide practical SQL queries based on typical data science scenarios. - **Exercises and Solutions**: Include exercises that cover each topic with solutions to reinforce learning. ### Conclusion - **Summary**: Recap the key points covered in the tutorial, emphasizing the role of SQL in data analysis and data science. - **Further Resources**: Suggest books, online courses, and practice platforms to continue learning SQL for more advanced data science applications. This structure aims to make SQL concepts accessible and memorable for beginners, especially those interested in applying SQL within the field of data science. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Command Categories | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ER Diagram | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Keys in Database | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Constraints in Database | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Operators in SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Views in SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Exception handling in SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Server Interview Question & Answer | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- Get link
- X
- Other Apps
Comments
Post a Comment