{"id":25945986,"url":"https://github.com/tom474/learn_sql_rmit","last_synced_at":"2025-03-04T09:19:44.927Z","repository":{"id":247976624,"uuid":"823488364","full_name":"tom474/learn_sql_rmit","owner":"tom474","description":"[RMIT 2023A] ISYS3414 - Practical Database Concepts - Learning Resources","archived":false,"fork":false,"pushed_at":"2025-01-29T08:50:01.000Z","size":14,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-29T09:38:26.560Z","etag":null,"topics":["database","mysql"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tom474.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-03T06:11:25.000Z","updated_at":"2025-01-29T09:35:50.000Z","dependencies_parsed_at":"2024-07-11T17:47:19.700Z","dependency_job_id":null,"html_url":"https://github.com/tom474/learn_sql_rmit","commit_stats":null,"previous_names":["tom474/learn_sql_rmit"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tom474%2Flearn_sql_rmit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tom474%2Flearn_sql_rmit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tom474%2Flearn_sql_rmit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tom474%2Flearn_sql_rmit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tom474","download_url":"https://codeload.github.com/tom474/learn_sql_rmit/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241818923,"owners_count":20025227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database","mysql"],"created_at":"2025-03-04T09:19:44.362Z","updated_at":"2025-03-04T09:19:44.914Z","avatar_url":"https://github.com/tom474.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Learn SQL from RMIT\n\nThis repository is designed for learning **SQL** using **MySQL**. It contains structured SQL scripts to help beginners and intermediate learners understand database creation, data manipulation, queries, and best practices.\n\n## Tech Stack\n\n- MySQL\n\n## Content\n\nThis repository provides hands-on practice with SQL concepts through real-world database examples. Below are the key topics you will learn:\n\n### 1. **Database Creation \u0026 Table Management**\n- How to create databases and tables (`CREATE TABLE`).\n- Setting **primary keys** and **foreign keys**.\n- Using constraints (`UNIQUE`, `NOT NULL`, `CHECK`, etc.).\n- Modifying tables using `ALTER TABLE`.\n\n### 2. **Data Insertion, Modification \u0026 Deletion**\n- Inserting records (`INSERT INTO`).\n- Updating existing data (`UPDATE`).\n- Deleting records (`DELETE`).\n\n### 3. **Querying Data with SELECT**\n- Retrieving all data (`SELECT * FROM table`).\n- Filtering with `WHERE`, `BETWEEN`, `IN`, `LIKE`.\n- Sorting results using `ORDER BY`.\n- Limiting results with `LIMIT`.\n\n### 4. **Aggregate Functions \u0026 Grouping**\n- Using `SUM()`, `AVG()`, `COUNT()`, `MIN()`, `MAX()`.\n- Grouping data with `GROUP BY`.\n- Filtering groups using `HAVING`.\n\n### 5. **Joins \u0026 Relationships**\n- **INNER JOIN** to combine related tables.\n- **LEFT JOIN** \u0026 **RIGHT JOIN** for partial data retrieval.\n- **SELF JOIN** for hierarchical data relationships.\n\n### 6. **Subqueries \u0026 Nested Queries**\n- Writing subqueries in `SELECT`, `FROM`, `WHERE` clauses.\n- Using correlated subqueries for advanced filtering.\n\n### 7. **Views \u0026 Indexing**\n- Creating **views** for simplified querying (`CREATE VIEW`).\n- Implementing **indexes** to optimize query performance.\n\n### 8. **Stored Procedures \u0026 Transactions**\n- Automating SQL tasks using **stored procedures**.\n- Ensuring data consistency with **transactions**.\n\n### 9. **Handling Integrity Constraints**\n- Understanding `FOREIGN KEY` dependencies.\n- Preventing duplicate data with `UNIQUE`.\n- Managing **ON DELETE CASCADE** \u0026 **ON UPDATE CASCADE**.\n\n### 10. **Practical Case Studies**\n- **Cinema Database**: Learn how to store and analyze movie reviews.\n- **Companies Database**: Understand salaries, departments, and promotions.\n- **Schools Database**: Track students, courses, and enrollments.\n- **Supermarket Database**: Manage customers, orders, and inventory.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftom474%2Flearn_sql_rmit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftom474%2Flearn_sql_rmit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftom474%2Flearn_sql_rmit/lists"}