+ All Categories

Sql

Date post: 20-Jan-2015
Category:
Upload: karunakaran-mallikeswaran
View: 1,788 times
Download: 0 times
Share this document with a friend
Description:
 
Popular Tags:
32
By : Karunakaran
Transcript
Page 1: Sql

By : Karunakaran

Page 2: Sql

SQL stands for Structured Query LanguageSQL lets you access and manipulate databasesIt is the most commonly used relational database

language today.

Page 3: Sql

SQL can execute queries against a databaseSQL can retrieve data from a databaseSQL can insert records in a databaseSQL can update records in a databaseSQL can delete records from a databaseSQL can create new databasesSQL can create new tables in a databaseSQL can create stored procedures in a databaseSQL can create views in a databaseSQL can set permissions on tables, procedures, and

views.

Page 4: Sql

A database most often contains one or more tables. Each table is identified by a name (e.g. “employee" or "Orders").

To begin, you must first CREATE a database using the following SQL statement:

CREATE DATABASE database_nameCREATE DATABASE database_nameeg: create database employee;create database employee;

Depending on the version of SQL being used the following statement is needed to begin using the database:

USE database_nameUSE database_nameeg: use employee;use employee;

Page 5: Sql

mysql> create table employee1 -> (emp_id int, -> emp_name varchar(25), -> emp_salary int);

emp_id emp_name emp_salary

int varchar(25) int

Page 6: Sql

SQL (Structured Query Language) is a syntax for executing queries. But the SQL language also includes a syntax to update, insert, and delete records.

These query SQL and update commands together form the Data Manipulation Language (DML) part of SQL:

SELECT - extracts data from a database table UPDATE - updates data in a database table DELETE - deletes data from a database table INSERT INTO - inserts new data into a database

table

Page 7: Sql

The Data Definition Language (DDL) part of SQL permits database tables to be created or deleted. We can also define indexes (keys), specify links between tables, and impose constraints between database tables.

The most important DDL statements in SQL are: 

CREATE TABLE - creates a new database table ALTER TABLE - alters (changes) a database table DROP TABLE - deletes a database table

Page 8: Sql

The SELECT statement is used to select data from a table. The tabular result is stored in a result table (called the result-set).

Syntax:

SELECT * FROM table_name;SELECT * FROM table_name;

(The * Operator asks for every column in the (The * Operator asks for every column in the table)table)

(Semicolon is the standard way to separate each (Semicolon is the standard way to separate each SQLstatement in database systems that allow SQLstatement in database systems that allow more than one SQL statement to be executed in more than one SQL statement to be executed in the same call to the server.)the same call to the server.)

Page 9: Sql

mysql> select * from employee1;

emp_id emp_name emp_salary

1 komal 10000

2 kavita 20000

3 komalpreet 30000

Page 10: Sql

The INSERT INTO statement is used to insert new rows into a table.

Syntax: INSERT INTO table_name VALUES (value1, INSERT INTO table_name VALUES (value1, value2,....) value2,....)

For example:mysql> insert into employee1

-> values(1,‘komal',10000);

emp_id emp_name emp_salary

1 komal 10000

Page 11: Sql

The UPDATE statement is used to modify the data in a table.

Syntax:UPDATE table_nameUPDATE table_nameSET column_name = new_valueSET column_name = new_valueWHERE column_name = some_value WHERE column_name = some_value

mysql> update employee1

-> set emp_name=‘hello’

-> where emp_id=3;

Page 12: Sql

emp_id emp_name emp_salary

1 Komal 10000

2 Kavita 20000

3 hello 30000

Page 13: Sql

The DELETE statement is used to delete rows in a table.

Syntax:

DELETE FROM table_nameDELETE FROM table_nameWHERE column_name = some_value WHERE column_name = some_value

mysql> delete from employee1

-> where emp_id=2 and emp_name=‘kavita';

emp_id emp_name emp_salary

1 komal 10000

3 hello 30000

Page 14: Sql

The ALTER TABLE statement is used to add, delete, or modify columns in an existing table.

Syntax:

ALTER TABLE table_nameALTER TABLE table_nameADD column_name datatypeADD column_name datatype

Eg: mysql> alter table employee1

-> add dateofbirth date;

emp_id emp_name emp_salary Dateof birth

1 Savita 10000

2 Kavita 20000

3 hello 30000

Page 15: Sql

The DROP INDEX statement is used to delete an index in a table.

Syntax: DROP TABLE table_nameDROP TABLE table_name

Eg: drop table employee1;drop table employee1;

Page 16: Sql

The SELECT INTO statement selects data from one table and inserts it into a different table.

The SELECT INTO statement is most often used to create backup copies of tables.

Syntax:

INSERT INTO NEW_TABLEINSERT INTO NEW_TABLESELECT* FROM OLD_TABLESELECT* FROM OLD_TABLE

Page 17: Sql

E.g. mysql>select* from person;

create table person10 -> (address varchar(30), -> city varchar(10), -> state varchar(20));

p_id lastname firstname

1 Ali Raj

2 Kumar Hansen

3 Peterson Ola

Page 18: Sql

mysql> insert into person10 -> select * from person;

mysql> select * from person10;

Address City State

1 Ali Raj

2 Kumar Hansen

3 Peterson Ola

Page 19: Sql

SQL has many built-in functions for performing calculations on data.

SQL Aggregate Functions:SQL aggregate functions return a single value,

calculated from values in a column.Useful aggregate functions: AVG() - Returns the average value COUNT() - Returns the number of rows FIRST() - Returns the first value LAST() - Returns the last value MAX() - Returns the largest value MIN() - Returns the smallest value SUM() - Returns the sum

Page 20: Sql

SQL Scalar functionsSQL scalar functions return a single value, based

on the input value.

Useful scalar functions: UCASE() - Converts a field to upper case LCASE() - Converts a field to lower case MID() - Extract characters from a text field LEN() - Returns the length of a text field ROUND() - Rounds a numeric field to the number

of decimals specified NOW() - Returns the current system date and

time FORMAT() - Formats how a field is to be displayed

Page 21: Sql

emp_id emp_name emp_salary

1 Savita 10000

2 Kavita 20000

3 Komal 30000

Page 22: Sql

1) SELECT AVG(column name) FROM table_nameSELECT AVG(column name) FROM table_name

select avg (emp salary) as order average from employee1;

2) SELECT COUNT(*) FROM table_nameSELECT COUNT(*) FROM table_name

select count(emp_name) as emp_namesavita from employee1 where emp_name='savita';

Order Average

20000.0000

emp_namesavita

1

Page 23: Sql

3) SELECT FIRST(column_name) FROM table_nameSELECT FIRST(column_name) FROM table_name select emp_name from employee1 order by emp id limit 1;

4) SELECT LAST(column_name) FROM table_nameSELECT LAST(column_name) FROM table_name select emp_name from employee1 order by emp id desc limit 2;

emp_name

Savita

emp_name

Komal

Kavita

Page 24: Sql

5) SELECT MAX(column_name) FROM table_nameSELECT MAX(column_name) FROM table_nameEg: select max(emp_salary) from employee1;

Ouput: 30000

6) SELECT MIN(column_name) FROM table_nameSELECT MIN(column_name) FROM table_nameEg: select min(emp_salary) from employee1;

Output: 10000

7) SELECT SUM(column_name) FROM table_nameSELECT SUM(column_name) FROM table_nameEg: select sum(emp_salary) from employee1;

Output: 60000

8) SELECT UCASE(column_name) FROM table_nameSELECT UCASE(column_name) FROM table_name Eg: select ucase(emp_name) from employee1;

Output: SAVITA KAVITA KOMAL

Page 25: Sql

9) SELECT LCASE(column_name) FROM table_nameSELECT LCASE(column_name) FROM table_nameEg: select lcase (emp_name) from employee1;

Output: savita kavita komal

Page 26: Sql

SQL joins are used to query data from two or more tables, based on a relationship between certain columns in these tables.

Different SQL JOINs• JOIN: Return rows when there is at least one

match in both tables• LEFT JOIN: Return all rows from the left table,

even if there are no matches in the right table• RIGHT JOIN: Return all rows from the right table,

even if there are no matches in the left table• FULL JOIN: Return rows when there is a match in

one of the tables

Page 27: Sql

1) JoinSELECT column_name(s)SELECT column_name(s)FROM table_name1FROM table_name1INNER JOIN table_name2INNER JOIN table_name2ON table_name1.column_name=table_name2.column_nameON table_name1.column_name=table_name2.column_name

Eg: The "Persons" table:P_Id LastName FirstName Address City1 Hansen Ola Timoteivn 10 Sandnes2 Svendson Tove Borgvn 23 Sandnes3 Pettersen Kari Storgt 20 Stavanger

The "Orders" table:O_Id OrderNo P_Id1 77895 32 44678 33 22456 14 24562 15 34764 15

Page 28: Sql

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNoFROM PersonsINNER JOIN OrdersON Persons.P_Id=Orders.P_Id;

LastName FirstName OrderNoHansen Ola 22456Hansen Ola 24562Pettersen Kari 77895Pettersen Kari 44678

2) Left joinSELECT column_name(s)SELECT column_name(s)FROM table_name1FROM table_name1LEFT JOIN table_name2LEFT JOIN table_name2ON table_name1.column_name=table_name2.column_nameON table_name1.column_name=table_name2.column_name

eg: SELECT Persons.LastName, Persons.FirstName, Orders.OrderNoFROM PersonsLEFT JOIN OrdersON Persons.P_Id=Orders.P_Id

Page 29: Sql

LastName FirstName OrderNoHansen Ola 22456Hansen Ola 24562Pettersen Kari 77895Pettersen Kari 44678Svendson Tove

3) Right joinSELECT column_name(s)SELECT column_name(s)FROM table_name1FROM table_name1RIGHT JOIN table_name2RIGHT JOIN table_name2ON table_name1.column_name=table_name2.column_nameON table_name1.column_name=table_name2.column_name

eg: SELECT Persons.LastName, Persons.FirstName, Orders.OrderNoFROM PersonsRIGHT JOIN OrdersON Persons.P_Id=Orders.P_Id

Page 30: Sql

LastName FirstName OrderNoHansen Ola 22456Hansen Ola 24562Pettersen Kari 77895Pettersen Kari 44678

34764

4) Full joinSELECT column_name(s)SELECT column_name(s)FROM table_name1FROM table_name1FULL JOIN table_name2FULL JOIN table_name2ON table_name1.column_name=table_name2.column_nameON table_name1.column_name=table_name2.column_name

eg: SELECT Persons.LastName, Persons.FirstName, Orders.OrderNoFROM PersonsFULL JOIN OrdersON Persons.P_Id=Orders.P_Id

Page 31: Sql

LastName FirstName OrderNoHansen Ola 22456Hansen Ola 24562Pettersen Kari 77895Pettersen Kari 44678Svendson Tove

34764

Page 32: Sql

Recommended