Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
80 views

SQL Live

The document discusses creating a database table with various columns to store employee data. It provides the column names and data types to be used. It then shows the SQL statements to create the table, add and delete columns, insert and bulk insert data, and perform other operations like update, delete, truncate. It also discusses concepts like identity, environments, clauses etc.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
80 views

SQL Live

The document discusses creating a database table with various columns to store employee data. It provides the column names and data types to be used. It then shows the SQL statements to create the table, add and delete columns, insert and bulk insert data, and perform other operations like update, delete, truncate. It also discusses concepts like identity, environments, clauses etc.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 19

AS PER THE REQUIREMENT, NEED TO CREATE A TABLE WITH BELOW COLUMNS

EMPID (FIRST LETTER FROM FIRSTNAME AND FIRST LETTER FROM LASTNAME AND ADD SERIAL
NUMBER)

EMPNAME(I WANT TO STORE ALL KEY BOARD INPUT KEYS AND OTHER LANGUAGES ALSO)

DOB (YYYY-MM-DD)

DOJ (NEED TO STORE TIME AS WELL WITH ABOVE FORMAT)

GENDER ( I WANT TO STORE ONE LETTER ALPHABET TO INDICATE MALE OR FEMALE)

PAN (ONLY ENGLISH STRING WANT TO STORE HERE)

AUDHAR ( ONLY NEED TO BE ALLOWED NUMBERS)

DEPART (I WANT TO STORE ALL KEY BOARD INPUT KEYS AND OTHER LANGUAGES ALSO)

USE HYDERABAD

CREATE TABLE TBLEMPLOYEE_MASTER

EMPID VARCHAR(100)

,EMPNAME NVARCHAR(100)

,DOB DATE

,DOJ DATETIME

,GENDER CHAR

,PAN VARCHAR(10)

,AUDHAR BIGINT

,DEPART NVARCHAR(1000)

ALTER :

TO ADD NEW COLUMNS

TO DELETE EXISTING COLUMN

TO CHANGE DATATYPE OR INCREASE /DECREASE COLUMN LEGNTH

--TO ADD NEW COLUMNS


ALTER TABLE TBLEMPLOYEE_MASTER

ADD FATHERNAME VARCHAR(100),COUNTRY NVARCHAR(100)

--TO KNOW TABLE STRUCTURE FOLLOW THE BELOW COMMAND

--SELECT THE TABLE AND ALT + F1 FUNCTION KEY

--OR GO TO OBJECT EXPLORER AND EXPAND DATABASE FOLDER

--EXPAND OUR DATABASE AND EXPAND TABLE FOLDER AND AGAIN EXPAND

--OUR TABLE COLUMNS

--HOW TO DELETE A EXISTING COLUMN --

ALTER TABLE TBLEMPLOYEE_MASTER

DROP COLUMN COUNTRY

--HOW TO CHANGE DATATYPE

--SQL STATEMENTS

DDL : DATA DEFINTION LANGUAGE

CREATE

ALTER

DROP

TRUNCATE :

SYNTAX :

TRUNCATE TABLE TBLEMPLOYEE_MASTER

DML : DATA MANIPULATION LANGUAGE


--SELECT : TO FETCH DATA OR TO FILTER COLUMNS

--INSERT

--DELETE

--UPDATE

--SYNTAX TO FETCH DATA ENTIRE DATA

SELECT * FROM TBLEMPLOYEE_MASTER

--INSERT:

--TO INSERT SINGLE RECORD

--TO INSERT MULTIPLE RECORDS

--TO INSERT BULK DATA

--TO INSERT SINGLE RECORD

INSERT INTO TBLEMPLOYEE_MASTER

(EMPID

,EMPNAME

,DOB

,DOJ

,GENDER

,PAN

,AUDHAR

,DEPART

,FATHERNAME

,COUNTRY)

VALUES('AB123','BHACHAN','1996-12-14','2007-12-
19','M','AJGPA1234K',123456781230,'IT','BACHAN HEAD','INDIA')

--TO INSERT MULTIPLE RECORDS AT A TIME INTO TABLE


INSERT INTO TBLEMPLOYEE_MASTER

(EMPID

,EMPNAME

,DOB

,DOJ

,GENDER

,PAN

,AUDHAR

,DEPART

,FATHERNAME

,COUNTRY)

VALUES('AC124','CHACHA','1996-12-19','2007-12-24','M','AJGKA1234K',123456781231,'HR','BACHAN
HEAD','INDIA'),

('BD125','CHACHA1','1996-12-19','2007-12-24','F','AJHKA1234K',123456781232,'FIN','BACHAN
HEAD','INDIA')

SELECT * FROM TBLEMPLOYEE_MASTER

--BULKINSERT

STEP

Murthy, 18:15

--BULKINSERT

STEP 1

TO FIND PATH OF THE FILE AND YOU SHOULLD ENSURE THERE IS NO HEADERS IN THE FILE

STEP 2:
WE HAVE TO CREATE STAGINGTABLE OR TEMPERARY TABLE TO HOLD HUGE DATA BEFORE PULLING
INTO ORIGINAL

WE HAVE TO CREATE STAGINGTABLE WITH ALL VARCCHAR COLUMNS ,IT SHOULD BE ALL VARCHAR
COLUMNS

STEP 3

WRITE SYNTAX TO PULL HUGE DATA FROM TEXT FILE TO STAGINGTABLE

STEP 4

WRITE SYTNAX TO LOAD DATA FROM STAGINGTABLE TO ORIGINAL /PROD TABLE

STEP 5:

VALIDATE STAGINGTBALE ROWS COUNT AND ORGINAL TABLE COUNT

--BULKINSERT TO PULL DATA FROM TEXT FILE

STEP 1

--TO FIND PATH OF THE FILE AND YOU SHOULLD ENSURE THERE IS NO HEADERS IN THE FILE

'D:\POWERBIEXCEL\BULKDATA.txt'

STEP 2:

WE HAVE TO CREATE STAGINGTABLE OR TEMPERARY TABLE TO HOLD HUGE DATA BEFORE PULLING
INTO ORIGINAL

WE HAVE TO CREATE STAGINGTABLE WITH ALL VARCCHAR COLUMNS ,IT SHOULD BE ALL VARCHAR
COLUMNS

create table staging

(id varchar(100),
name varchar(100),

salary varchar(100)

STEP 3

WRITE SYNTAX TO PULL HUGE DATA FROM TEXT FILE TO STAGINGTABLE

bulk insert staging

from 'D:\POWERBIEXCEL\BULKDATA.txt'

with (fieldterminator = ',',rowterminator = '\n')

go

SELECT * FROM STAGING

STEP 4

--Creating original table if not available in our project

CREATE TABLE ORIGNAL

(EMPID INT,

EMPNAME VARCHAR(100),

SALARY NUMERIC(8,2)

--WRITE SYTNAX TO LOAD DATA FROM STAGINGTABLE TO ORIGINAL /PROD TABLE

insert into ORIGNAL

select * from staging

STEP 5:
VALIDATE STAGINGTBALE ROWS COUNT AND ORGINAL TABLE COUNT

--BULKINSERT TO PULL DATA FROM TEXT FILE

STEP 1

--TO FIND PATH OF THE FILE AND YOU SHOULLD ENSURE THERE IS NO HEADERS IN THE FILE

'D:\POWERBIEXCEL\BULKDATA.txt'

STEP 2:

WE HAVE TO CREATE STAGINGTABLE OR TEMPERARY TABLE TO HOLD HUGE DATA BEFORE PULLING
INTO ORIGINAL

WE HAVE TO CREATE STAGINGTABLE WITH ALL VARCCHAR COLUMNS ,IT SHOULD BE ALL VARCHAR
COLUMNS

create table staging

(id varchar(100),

name varchar(100),

salary varchar(100)

STEP 3

WRITE SYNTAX TO PULL HUGE DATA FROM TEXT FILE TO STAGINGTABLE

bulk insert staging

from 'D:\POWERBIEXCEL\BULKDATA.txt'

with (fieldterminator = ',',rowterminator = '\n')


go

SELECT * FROM STAGING

STEP 4

--Creating original table if not available in our project

CREATE TABLE ORIGNAL

(EMPID INT,

EMPNAME VARCHAR(100),

SALARY NUMERIC(8,2)

--WRITE SYTNAX TO LOAD DATA FROM STAGINGTABLE TO ORIGINAL /PROD TABLE

insert into ORIGNAL

select * from staging

STEP 5:

VALIDATE STAGINGTBALE ROWS COUNT AND ORGINAL TABLE COUNT

SELECT * FROM ORIGNAL

--DML Commands

select : to fetch/retrieve the data

insert : to add new records


update : to modify data

delete : to delete a record or records

UPDATE :

--TO MODIFY SINGLE COLUMN DATA

SYNTAX

UPDATE <TABLENAME> SET <COLUMNNAME>=<VALUE> WHERE <COLUMN>=<VALUE>

UPDATE TBLEMPLOYEE_MASTER SET EMPNAME='AMITHAB BACHAN' WHERE EMPID='AB123'

SELECT * FROM TBLEMPLOYEE_MASTER

--SYNTAX TO MODIFY MULTIPLE COLUMNS

BEGIN

UPDATE TBLEMPLOYEE_MASTER

SET EMPNAME='AMITHAB BACHAN',

DOB='1956-12-12',

PAN ='ABCD1234K'

WHERE EMPID='AB123'

END

--SYNTAX FOR MULTIPLE ROWS WITH MULTIPLE COLUMNS

UPDATE TBLEMPLOYEE_MASTER

SET EMPNAME='AMITHAB BACHAN',

DOB='1956-12-12',

PAN ='ABCD1234K'
--DELETE

--TO DELETE ENTIRE TABLE DATA

SYNTAX

DELETE FROM TBLEMPLOYEE_MASTER

--TO DELETE DESIRE ROWS OF DATA -

DELETE FROM TBLEMPLOYEE_MASTER WHERE EMPID='ABC123'

SELECT * FROM TBLEMPLOYEE_MASTER

UPDATE TBLEMPLOYEE_MASTER SET COUNTRY=NULL

--TRANSACTIONAL CONTROL LANGUAGE

COMMIT : ACCEPT OUR CHANGES

ROLLBACK : UNDO THE DATA

BEGIN TRANSACTION

UPDATE TBLEMPLOYEE_MASTER SET COUNTRY='AUS'

PRINT 'PLS COMMIT IF NO ERRORS FOUND'

--ROLLBACK

--COMMIT

SELECT * FROM TBLEMPLOYEE_MASTER WITH(NOLOCK)


WHAT ARE THE PROPERTIES IN SQL SERVER

IDENTITY :

IT IS A PROPERTY AND ALSO CALLED AS DATA INTEGRITY CONCEPT

USING TO GET AUTO GENERATED NUMBERING SYSTEM ON COLUMN LEVEL

IDENTITY HAVE TWO COMPONENTS ONE IS STARTING NUMBER AND

SECOND ONE IS INCREMENT NUMBER FOR NEXT NUMBER

IDENTITY CAN BE APPLIED ONLY ON NUMERICAL DATATYPES

CREATE TABLE EMPDATA

(EMPID INT IDENTITY(0,1)

,EMPNAME VARCHAR(100)

INSERT INTO EMPDATA(EMPNAME)VALUES('RAJKUMAR'),('PREM'),('SATISH'),('RAKESH')

SELECT * FROM EMPDATA

--HOW TO ALTER IDENTITY

DBCC CHECKIDENT('EMPDATA',RESEED,100)

TRUNCATE :

IT CAN BE USED ONLY ON TABLE OBJECT

USING TO DELETE ENTIRE DATA

THERE IS NO ROW WISE DELETION FACILTIY

TRUNCATE TABLE EMPDATA


SELECT * FROM EMPDATA

--DELETE

DELETE FROM EMPDATA

---TRUNCATE :

TRUNCATE IS COVERED UNDER DDL

TRUNCATE DELETES ENTIRE DATA

WE CAN NOT USE WHERE CLAUSE IN TRUNCATE

TRUNCATE REMOVES LOG DATA

TRUNCATE RESET THE IDENTITY OR SCHEMA VALUES

WE CAN NOT RECOVER THE DATA

--DELETE

DELETE IS COVERED UNDER DML

DELETE DELETES ENTIRE DATA OR DESIRED ROWS

HERE WE CAN USE WHERE CLAUSE TO DELETE REQUIRED OR SPECIFIED DATA

DELETE DOESNOT REMOVE LOG DATA

WE CAN RECOVER OUR DATA AFTER DELETION

DELETE DOESNOT RESET THE IDENTITY

ENVIRONMENTS

DEV

DEV-a

DEV-b

QA
QA1

QA2

QA3

UAT

CT1

CT2

CT3

PROD

PROD

CLAUSES :

A PHRASE OR A WORD IS USING TO MAKE A SQL STATEMENT TO FETCH DATA WITH DESIRED
CONDITIONS

SELECT : TO FETCH DATA, TO FILTER COLUMNS

DISTINCT : TO FILTER DUPLICATE ROWS

TOP : TO GET SAMPLE DATA

INSERT INTO : TO COPY DATA FROM EXISTING TABLE TO EXISTING TABLE OR EXISTING TO NEW
TABLE WITH DATA OR WTIHOUT DATA

FROM : TO IDENTIFY THE TABLE OR VIEW OR FUNCTION OBJECTS

WHERE : TO FILTER ROWS INSTEAD OF FETCHING ENTIRE DATA FROM TABLE AND TO APPLY
MULTIPLE CONDITIONS

GROUP BY : TO AGGREGATE THE ACTUAL OR DETAILED DATA

HAVING : TO FILTER AGGREGATED ROWS AFTER GROUP BY CLAUSE

ORDER BY ASC : TO SORT THE DATA BY ASCENDING ORDER (SMALLEST TO LARGEST)

ORDER BY DESC : TO SROT THE DATA BY DESCENDING ORDER (LARGEST TO SMALLEST)

SELECT :

--1) TO FETCH DATA :

SELECT * FROM TBLEMPLOYEE_MASTER


--2) TO FILTER COLUMNS

SELECT EMPID,EMPNAME,DOB,DOJ,GENDER,PAN FROM TBLEMPLOYEE_MASTER

--3) TO COPY STRUCTURE OF ANOTHER TABLE WITH DATA /WITHOUT DATA

--WITHOUT DATA TO COPY STRUCTURE OF ANOTHER TABLE

SELECT * INTO DESTINATIONTABLE FROM SOURCETTABLE WHERE 1=0

SELECT EMPID,PAN,AUDHAR,COUNTRY INTO TBLEMPLOYEE FROM TBLEMPLOYEE_MASTER

WHERE 1=0

--WITHDATA TO COPY STRUCTURE OF ANOTHER TABLE

SELECT EMPID,PAN,AUDHAR,COUNTRY INTO TBLMASTER FROM TBLEMPLOYEE_MASTER

--HOW TO COPY DATA FROM EXISTING TO EXISTING TABLE

INSERT INTO TBLEMPLOYEE(EMPID,PAN,AUDHAR,COUNTRY)

SELECT EMPID,PAN,AUDHAR,COUNTRY FROM TBLEMPLOYEE_MASTER

EMPID

PASSPORT

MOBILENO

COUNTRY

CREATE TABLE AJAY

EMPID INT,

PASSPORT VARCHAR(100),

MOBILENO BIGINT,

COUNTRY NVARCHAR(100)

)
--DISTINCT

--TO FILTER DUPLICATE ROWS

SELECT * FROM TBLEMPLOYEE

CREATE TABLE EMPDETAILS

(EMPID INT,

EMPNAME VARCHAR(100),

DEPT VARCHAR(10)

INSERT INTO EMPDETAILS VALUES(101,'VENKATESH','IT'),(102,'AJAY','NETWORK'),(103,'RAKESH','IT'),

(104,'SATISH','IT'),(105,'RAJ','IT'),(106,'PREM','HR'),(107,'RAJESH','NETWORK')

SELECT * FROM EMPDETAILS

SELECT DISTINCT DEPT FROM EMPDETAILS

--TOP : TO GET SAMPLE DATA

SELECT TOP 9 * FROM EMPDETAILS

--WHERE

--TO FILTER ACTUAL ROWS

SELECT * FROM EMPDETAILS WHERE DEPT='NETWORK' AND EMPID>102

CLAUSES :

A PHRASE OR A WORD IS USING TO MAKE A SQL STATEMENT TO FETCH DATA WITH DESIRED
CONDITIONS
SELECT : TO FETCH DATA, TO FILTER COLUMNS

DISTINCT : TO FILTER DUPLICATE ROWS

TOP : TO GET SAMPLE DATA

INSERT INTO : TO COPY DATA FROM EXISTING TABLE TO EXISTING TABLE OR EXISTING TO NEW
TABLE WITH DATA OR WTIHOUT DATA

FROM : TO IDENTIFY THE TABLE OR VIEW OR FUNCTION OBJECTS

WHERE : TO FILTER ROWS INSTEAD OF FETCHING ENTIRE DATA FROM TABLE AND TO APPLY
MULTIPLE CONDITIONS

GROUP BY : TO AGGREGATE THE ACTUAL OR DETAILED DATA

HAVING : TO FILTER AGGREGATED ROWS AFTER GROUP BY CLAUSE

ORDER BY ASC : TO SORT THE DATA BY ASCENDING ORDER (SMALLEST TO LARGEST)

ORDER BY DESC : TO SROT THE DATA BY DESCENDING ORDER (LARGEST TO SMALLEST)

SELECT :

--1) TO FETCH DATA :

SELECT * FROM TBLEMPLOYEE_MASTER

--2) TO FILTER COLUMNS

SELECT EMPID,EMPNAME,DOB,DOJ,GENDER,PAN FROM TBLEMPLOYEE_MASTER

--3) TO COPY STRUCTURE OF ANOTHER TABLE WITH DATA /WITHOUT DATA

--WITHOUT DATA TO COPY STRUCTURE OF ANOTHER TABLE

SELECT * INTO DESTINATIONTABLE FROM SOURCETTABLE WHERE 1=0

SELECT EMPID,PAN,AUDHAR,COUNTRY INTO TBLEMPLOYEE FROM TBLEMPLOYEE_MASTER

WHERE 1=0

--WITHDATA TO COPY STRUCTURE OF ANOTHER TABLE

SELECT EMPID,PAN,AUDHAR,COUNTRY INTO TBLMASTER FROM TBLEMPLOYEE_MASTER


--HOW TO COPY DATA FROM EXISTING TO EXISTING TABLE

INSERT INTO TBLEMPLOYEE(EMPID,PAN,AUDHAR,COUNTRY)

SELECT EMPID,PAN,AUDHAR,COUNTRY FROM TBLEMPLOYEE_MASTER

EMPID

PASSPORT

MOBILENO

COUNTRY

CREATE TABLE AJAY

EMPID INT,

PASSPORT VARCHAR(100),

MOBILENO BIGINT,

COUNTRY NVARCHAR(100)

--DISTINCT

--TO FILTER DUPLICATE ROWS

SELECT * FROM TBLEMPLOYEE

CREATE TABLE EMPDETAILS

(EMPID INT,

EMPNAME VARCHAR(100),

DEPT VARCHAR(10)

INSERT INTO EMPDETAILS VALUES(101,'VENKATESH','IT'),(102,'AJAY','NETWORK'),(103,'RAKESH','IT'),

(104,'SATISH','IT'),(105,'RAJ','IT'),(106,'PREM','HR'),(107,'RAJESH','NETWORK')
SELECT * FROM EMPDETAILS

SELECT DISTINCT DEPT FROM EMPDETAILS

--TOP : TO GET SAMPLE DATA

SELECT TOP 9 * FROM EMPDETAILS

--WHERE

--TO FILTER ACTUAL ROWS

SELECT * FROM EMP DETAILS WHERE DEPT='NETWORK' AND EMPID>102

--Write a syntax to create a table with below requirement

--instant assignment

studentid ( want to store only numbers)

studentname (only english)

course ( want to store english and other langs)

doj (need yyyy-mm-dd)

gender ( i want to indicate male as 0 and female as 1)

--GROUP BY : TO AGGREGATE THE DATA

SELECT * FROM EMPDETAILS

ALTER TABLE EMPDETAILS

ADD SALARY FLOAT

UPDATE EMPDETAILS SET SALARY=5000 WHERE EMPID<104

UPDATE EMPDETAILS SET SALARY=5500 WHERE EMPID>=104


--AGGREGATE FUNCTIONS

--SUM,AVG,MAX,MIN,COUNT AND COUNT DISTINCT

SELECT DEPT,COUNT(EMPID)AS COUNTOFROWS,SUM(SALARY)TOTALSALARY FROM EMPDETAILS

GROUP BY DEPT

SELECT DEPT,AVG(SALARY) FROM EMPDETAILS

GROUP BY DEPT

---HAVING CLAUSE : TO FILTER AGGREGATED OR GROUPED ROWS

--IT CAN BE USED ALONG WITH GROUP BY CLAUSE ONLY

SELECT DEPT,COUNT(EMPID)AS COUNTOFROWS,SUM(SALARY)TOTALSALARY FROM EMPDETAILS

GROUP BY DEPT HAVING COUNT(EMPID)>=4

Murthy, 11:55

--HOW TO DELETE ENTIRE DUPLICATE ROWS

SELECT * FROM TBLEMPLOYEE

SET ROWCOUNT 6

DELETE FROM TBLEMPLOYEE WHERE EMPID IN('AB123','AC124','BD125')

SET ROWCOUNT 0

You might also like