{"id":20733352,"url":"https://github.com/moindalvs/ms_sql_for_beginners","last_synced_at":"2026-04-25T22:31:45.842Z","repository":{"id":127429289,"uuid":"535246591","full_name":"MoinDalvs/MS_SQL_for_Beginners","owner":"MoinDalvs","description":null,"archived":false,"fork":false,"pushed_at":"2022-09-11T09:19:21.000Z","size":8,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-01T09:10:11.000Z","etag":null,"topics":["microsoft-sql-server","mssql","mssql-database","mysql","mysql-database","mysql-server","sql-query","sql-server","sqlite-database"],"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/MoinDalvs.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":"2022-09-11T09:18:46.000Z","updated_at":"2022-09-12T08:51:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"c63ee03e-0d13-4cd8-956c-fd86e7b38fdb","html_url":"https://github.com/MoinDalvs/MS_SQL_for_Beginners","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MoinDalvs%2FMS_SQL_for_Beginners","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MoinDalvs%2FMS_SQL_for_Beginners/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MoinDalvs%2FMS_SQL_for_Beginners/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MoinDalvs%2FMS_SQL_for_Beginners/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MoinDalvs","download_url":"https://codeload.github.com/MoinDalvs/MS_SQL_for_Beginners/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MoinDalvs%2FMS_SQL_for_Beginners/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":258637555,"owners_count":22733904,"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":["microsoft-sql-server","mssql","mssql-database","mysql","mysql-database","mysql-server","sql-query","sql-server","sqlite-database"],"created_at":"2024-11-17T05:24:50.981Z","updated_at":"2026-04-25T22:31:40.822Z","avatar_url":"https://github.com/MoinDalvs.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# MS_SQL_for_Beginners\n# MY SQL BUILT IN FUNCTIONS\n # use \"Ctrl+Enter\" key for executing the codes per ; \"Semicolon\"\nshow databases;\nuse world;\nshow tables;\nselect * from city;\ndescribe city;\nCREATE DATABASE sql_intro;\nshow databases;\nCREATE TABLE Employee_Details (Name VARCHAR(20), Age INT,Sex CHAR(1),Date_of_Joining DATE,City VARCHAR(10),Salary float);\nDESCRIBE Employee_Details;\nINSERT INTO Employee_Details\nVALUES('Jimmy',35,'M','2005,05-30','Chicago',70000),\n('Shane',30,'M','1999-06-25','Seattle',55000),\n('Mary',28,'F','2009-03-10','Boston',62000),\n('Dwayne',37,'M','2011-07-12','Austin',57000),\n('Sara',32,'F','2017-10-27','New York',72000),\n('Ammy',35,'F','2014-12-20','Seattle',80000); \nSELECT * FROM Employee_Details;\nSELECT DISTINCT City FROM Employee_Details;\nSELECT COUNT(Name) AS 'Number of Employees' FROM Employee_Details;\nSELECT SUM(Salary) AS 'TotalSalary Distributed' FROM Employee_Details;\nSELECT AVG(Salary) AS AVG_Salary FROM Employee_Details; \nSELECT Age,Name,Salary FROM Employee_Details;\nSELECT * FROM Employee_Details WHERE Age \u003e 30;\nUSE sql_intro;\nSELECT * FROM Employee_Details WHERE Sex = 'F';\nSELECT * FROM Employee_Details WHERE City = \"Chicago\" OR City = \"Boston\";\nSELECT * FROM Employee_Details WHERE City IN ('Chicago','Boston');\nSELECT * FROM Employee_Details WHERE Date_of_Joining BETWEEN '2000-01-01' AND '2010-12-31';\nSELECT sex,SUM(salary) as 'Total Salary' FROM Employee_Details GROUP BY sex;\nSELECT * FROM Employee_Details ORDER BY salary;\nSELECT * FROM Employee_Details ORDER BY Salary DESC;\nSELECT (69-420) AS Subtract;\nSELECT (420+69) AS Addition;\nSELECT length('Cinco') AS Length;\nSELECT REPEAT('_',10);\nSELECT UPPER('khade ho');\nSELECT LOWER('SIT DOWN');\nSELECT CURDATE();\nSELECT NOW();\nSELECT DAY(CURRENT_DATE());\n# Strings Function\nSELECT UCASE('jobuthejabba') AS Upper_case;\nSELECT LCASE(\"JABBA\") AS Lower_case;\nSELECT CHAR_LENGTH('I Love my India') AS Length;\nSELECT CONCAT('India',' is',' my',' Country') AS Merged;\nUSE sql_intro;\nSELECT Name, CHAR_LENGTH(Name) FROM Employee_details;\nSELECT CONCAT(Sex,\" \",Name,\" \",Age) AS merged_details FROM Employee_Details;\nSELECT REVERSE(Name) FROM employee_details;\nSELECT REPLACE(\"Orange is a Vegetable\", 'Vegetable','Fruit');\nSELECT * FROM Employee_Details;\nSELECT REPLACE(Name, \"Ammy\",'Amreen') FROM Employee_Details;\nSELECT length('      Jobu        ');\nSELECT length(ltrim('      Jobu        '));\nSELECT LENGTH(RTRIM('      Jobu        '));\nSELECT LENGTH(TRIM('      Jobu        '));\nSELECT POSITION('Fruit' IN 'Orange is a Fruit');  \nSELECT ASCII('A');\nSELECT ASCII('a');\nSELECT ASCII('1');\n\n# GROUP BY AND HAVING CLAUSE\n\nUSE sql_intro;\nALTER TABLE Employee_Details ADD Emp_ID INT FIRST;\nALTER TABLE Employee_Details RENAME COLUMN Name TO Employee_Name;\nALTER TABLE Employee_Details RENAME COLUMN Employee_Name TO Emp_Name;\nINSERT INTO Employee_Details (Emp_ID)\nVALUES (101),(102),(103),(104),(105),(106);\nDELETE FROM Employee_Details WHERE Emp_ID = 106;\nUPDATE Employee_Details \nSET Emp_ID = 101\nWHERE Emp_Name = 'Jimmy';\nSELECT * FROM Employee_Details;\nUPDATE Employee_Details SET Emp_ID = 102 WHERE Emp_Name = 'Shane';\nUPDATE Employee_Details SET Emp_ID = 103 WHERE Emp_Name = 'Mary';\nUPDATE Employee_Details SET Emp_ID = 104 WHERE Emp_Name = 'Dwayne';\nUPDATE Employee_Details SET Emp_ID = 105 WHERE Emp_Name = 'Sara';\nUPDATE Employee_Details SET Emp_ID = 106 WHERE Emp_Name = 'Ammy';\nUPDATE Employee_Details SET Emp_Name = 'Marry' WHERE Emp_Name = 'Mary';\nALTER TABLE Employee_Details RENAME COLUMN Date_of_Joining TO DOJ;\nALTER TABLE Employee_Details ADD COLUMN Dept VARCHAR(10) AFTER DOJ;\nINSERT INTO Employee_Details\nVALUES (107,'Jack',40,'M','2012-07-14','Finance','Houston',100000),\n\t   (107,'Angela',36,'F','2007-02-04','Tech','New York',110000),\n       (107,'Marcus',25,'M','2010-07-18','HR','Boston',90000),\n       (107,'David',34,'M','2009-08-25','Product','Miami',75000),\n       (107,'Rose',28,'F','2011-02-27','Tech','Chicago',60000),\n       (107,'Sophia',33,'F','2013-09-21','HR','Houston',65000),\n       (107,'Amelia',30,'F','2018-10-15','Finance','Austin',55000),\n       (107,'Robert',40,'M','2015-12-18','Sales','Detroit',95000),\n       (107,'William',36,'M','2016-04-20','IT','Chicago',83000),\n       (107,'John',32,'M','2004-08-09','Marketing','Miami',67000),\n       (107,'Bella',29,'F','2002-06-11','Tech','Detroit',72000),\n       (107,'Maya',25,'F','2018-10-15','IT','Houston',48000),\n       (107,'Alice',37,'F','2019-05-28','Product','Seattle',76000),\n       (107,'Joseph',45,'M','2016-11-23','Sales','Chicago',115000);\nUPDATE Employee_Details SET Dept = 'Sales' WHERE Emp_Name = 'Jimmy';\nUPDATE Employee_Details SET Dept = 'Mareketing' WHERE Emp_Name = 'Shane';\nUPDATE Employee_Details SET Dept = 'Product' WHERE Emp_Name = 'Marry';\nUPDATE Employee_Details SET Dept = 'Tech' WHERE Emp_Name = 'Dwayne';\nUPDATE Employee_Details SET Dept = 'Sales' WHERE Emp_Name = 'Sara';\nUPDATE Employee_Details SET Dept = 'IT' WHERE Emp_Name = 'Ammy';\nUPDATE Employee_Details SET Emp_ID = 108 WHERE Emp_Name  = 'Angela';\nUPDATE Employee_Details SET Emp_ID = 109 WHERE Emp_Name  = 'Marcus';\nUPDATE Employee_Details SET Emp_ID = 110 WHERE Emp_Name  = 'David';\nUPDATE Employee_Details SET Emp_ID = 111 WHERE Emp_Name  = 'Rose';\nUPDATE Employee_Details SET Emp_ID = 112 WHERE Emp_Name  = 'Sophia';\nUPDATE Employee_Details SET Emp_ID = 113 WHERE Emp_Name  = 'Amelia';\nUPDATE Employee_Details SET Emp_ID = 114 WHERE Emp_Name  = 'Robert';\nUPDATE Employee_Details SET Emp_ID = 115 WHERE Emp_Name  = 'William';\nUPDATE Employee_Details SET Emp_ID = 116 WHERE Emp_Name  = 'John';\nUPDATE Employee_Details SET Emp_ID = 117 WHERE Emp_Name  = 'Bella';\nUPDATE Employee_Details SET Emp_ID = 118 WHERE Emp_Name  = 'Maya';\nUPDATE Employee_Details SET Emp_ID = 119 WHERE Emp_Name  = 'Alice';\nUPDATE Employee_Details SET Emp_ID = 120 WHERE Emp_Name  = 'Joseph';\nUSE sql_intro;\nUPDATE Employee_Details SET Emp_Name = 'Mary' WHERE Emp_Name = 'Marry';\nSELECT * FROM Employee_Details;\nSELECT DISTINCT Dept FROM Employee_Details;\nSELECT DISTINCT City FROM Employee_Details;\nSELECT AVG(Salary) FROM Employee_Details;\nSELECT Dept, ROUND(AVG(Age),0) AS \"Average Age\" FROM Employee_Details GROUP BY Dept;\nSELECT Dept, SUM(Salary) AS \"Total Salary\" FROM Employee_Details GROUP BY Dept;\nSELECT City, COUNT(Emp_ID) FROM Employee_Details GROUP BY City ORDER BY Emp_ID;\nSELECT YEAR(DOJ) AS Year, COUNT(Emp_ID) AS 'Total Employee Joined' FROM Employee_Details GROUP BY YEAR(DOJ);\nCREATE TABLE SALES (Product_ID INT, Sell_Price FLOAT, QTY INT, Status VARCHAR(20));\nDESCRIBE SALES;\nALTER TABLE SALES RENAME Sales; \nSHOW TABLES;\nALTER TABLE Sales RENAME COLUMN Status to State;\nDESCRIBE Sales;\nINSERT INTO Sales\nVALUES (121,320,3,'California'),\n\t   (121,320,6,'Texas'),\n       (121,320,4,'Alaska'),\n       (123,290,2,'Texas'),\n       (123,290,7,'California'),\n       (123,290,4,'Washington'),\n       (121,320,7,'Ohio'),\n       (121,320,2,'Arizona'),\n       (123,290,8,'Colorado');\nSELECT * FROM Sales;\nSELECT Product_id, SUM(Sell_price*QTY) AS Revenue FROM Sales GROUP BY Product_ID;\nCREATE TABLE Prod_Cost (Product_ID INT, Cost_Price FLOAT);\nDESCRIBE Prod_Cost;\nINSERT INTO Prod_Cost\nVALUES (121,270),\n       (123,250);\nSELECT * FROM Prod_Cost;\nSELECT c.product_id, SUM((s.sell_price - c.cost_price) * qty) AS profit\nFROM sales AS s INNER JOIN prod_cost AS c\nUSING (product_id) GROUP BY c.product_id;\nSELECT dept, AVG(salary) AS 'AVG salary' FROM employee_details GROUP BY dept HAVING AVG(salary) \u003e 75000;\nSELECT city, SUM(salary) AS 'total salary' FROM employee_details GROUP BY city HAVING SUM(salary) \u003e 200000; \nSELECT dept, COUNT(emp_id) AS total_employee FROM employee_details GROUP BY dept HAVING COUNT(emp_id) \u003e 2;\nSELECT dept, COUNT(*) AS total_employee FROM employee_details GROUP BY dept HAVING COUNT(*) \u003e 2;\nSELECT city, COUNT(*) AS emp_count FROM employee_details WHERE city != 'Houston' HAVING COUNT(*) \u003e 2;\nSELECT city, COUNT(*) AS emp_count FROM employee_details WHERE city != 'Houston' GROUP BY city HAVING COUNT(*) \u003e 2;\nSELECT dept, COUNT(*) AS Emp_count FROM employee_details GROUP BY dept HAVING AVG(salary) \u003e 75000;\n\n# Joins in SQL\n\n# INNER Join\n\nCREATE DATABASE sql_joins;\nSHOW DATABASES;\nUSE sql_joins;\nCREATE TABLE cricket ( cricket_id INT AUTO_INCREMENT, name VARCHAR(30), PRIMARY KEY(cricket_id));\nCREATE TABLE football (football_id INT AUTO_INCREMENT, name VARCHAR(30), PRIMARY KEY(football_id));\nINSERT INTO cricket (name)\nVALUES('stuart'),('michael'),('johnson'),('hayden'),('fleming');\nSELECT * FROM cricket;\nINSERT INTO football (name) VALUES('stuart'),('johnson'),('hayden'),('langer'),('astle');\nSELECT * FROM football;\nSELECT f.name FROM football f INNER JOIN cricket c USING (name);\nSELECT * FROM cricket INNER JOIN football USING (name);\nSELECT * FROM cricket c INNER JOIN football f ON c.name=f.name;\nSHOW DATABASES;\nUSE classicmodels;\nSELECT * FROM products;\nSELECT * FROM productlines;\nSELECT prod.productcode, prod.productname, prodl.textdescription FROM products prod INNER JOIN productlines prodl USING (productline);\nSELECT ordernumber, p.productname, SUM(od.priceeach*od.quantityordered) AS Revenue , o.status FROM orderdetails od INNER JOIN products p USING (productcode) INNER JOIN orders o USING (ordernumber) GROUP BY ordernumber;\n\n# LEFT Join\n\nSELECT c.customernumber, c.customername, o.ordernumber, o.status FROM customers c LEFT JOIN orders o USING (customernumber);\nSELECT c.customernumber, c.customername, o.ordernumber, o.status FROM customers c LEFT JOIN orders o USING (customernumber) WHERE o.ordernumber IS NULL;\n\n# Right Join\n\nSELECT c.customername, CONCAT(c.contactfirstname,\" \",c.contactlastname) AS 'Contact Person', c.phone, e.employeenumber, CONCAT(e.firstname,\" \",e.lastname) AS 'Employee NAME', e.email\nFROM customers c RIGHT JOIN Employees e ON c.salesrepemployeenumber = e.employeenumber\nGROUP BY e.employeenumber  HAVING customername IS NOT NULL ORDER BY c.customername;\n\n# Self Join\n\nSELECT CONCAT(m.lastname,' ',m.firstname) AS Manager, CONCAT(e.lastname,' ',m.firstname) AS Employee FROM Employees m INNER JOIN Employees e ON m.employeenumber = e.reportsto ORDER BY Manager; \n\n# FULL Join\n\nSELECT c.customername, o.ordernumber FROM customers c LEFT JOIN orders o USING (customernumber) UNION SELECT c.customername, o.ordernumber FROM customers c RIGHT JOIN orders o USING (customernumber);\n\n# Subquery in SQL\n\nUSE sql_intro;\nSELECT emp_name, dept, salary FROM employee_details\nWHERE salary \u003c ( SELECT AVG(salary) FROM employee_details);\n\n# Update subquery\n\nCreate table products (prod_id int,item varchar(30), sell_price float, product_type varchar(30));\nINSERT INTO products VALUES( 101, 'Jewellery', 1800, 'Luxury'), (102, 'T-Shirt', 100, 'Non-Luxury'), (103, 'Laptop', 1300, 'Luxury'), (104, 'Table', 400, 'Non-Luxury');\nSELECT * FROM products;\nCREATE TABLE orders (order_id INT, prod_sold VARCHAR(30), sell_price float);\nINSERT INTO orders SELECT prod_id, item, sell_price FROM products WHERE prod_id IN (SELECT prod_id FROM products WHERE sell_price \u003e 1000);\nSELECT * FROM orders;\n\n# UPDATE STATEMENT\n\nSELECT * FROM Employee_details;\nUPDATE Employee_details SET SALARY = SALARY*0.35 WHERE AGE IN (SELECT age FROM employee_details WHERE AGE \u003e= 27 );\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoindalvs%2Fms_sql_for_beginners","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmoindalvs%2Fms_sql_for_beginners","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoindalvs%2Fms_sql_for_beginners/lists"}