notes-1
notes-1
-----------------------
-> create a database
-> view the list of database
-> select database
-> activate database
-> delete database
creating a table
description of tables
select the data from table
insert the data into the table
updating the data into the table
deleting the data from table
Datatypes in SQL
----------------
Number:-
--------
-> tinyint -> 4 digit
-> smallint -> 5 digit
-> mediumint -> 9 digit
-> int -> 11 digit
-> bigint -> 20 digit
Fractions
---------
SQL COMMANDS
-------------
truncate
---------
rename
-------
truncate
---------
DDL
truncate db1;
delete data NOT STRUCTURE
all rows
no rollback
delete
-------
DML
delete from db1;
delete data NOT STRUCTURE
specific / all rows
rollback
drop
-----
DDL
drop table demo;;
delete data & STRUCTURE
specific / all rows
all constrainst
all indexes
all privileges
no rollback
DML Commands
------------
insert
update
delete
insert
-------
mysql> insert into student values(6, 'deepika', 'DB TESTING', 79), (7, 'mahesh',
'Oracle', 67);
Query OK, 2 rows affected (0.01 sec)
update
-------
delete
--------
=========================================================================
mysql> select * from myemp order by dep_id, HIRE_DATE desc limit 10;
=
<
<=
>
>=
<> or !=
between
and
or
not
in
not in
is
is not
like
like operator
-------------
=> pattern matching
=> special character
=> case is not important;
grouping record
----------------
select <colName>
from <tableName>
group by <colname>;
functions
----------
row level function -------> on every row, 1 o/p per row.
sum()
avg()
min()
max()
count() etc...
mysql>
mysql>
mysql> select sum(salary) as sumsalary, avg(salary) as avgsalary, max(salary) as
maxsalary, min(salary) as minsalary, count(salary) as contsalary from myemp;
+-----------+-------------+-----------+-----------+------------+
| sumsalary | avgsalary | maxsalary | minsalary | contsalary |
+-----------+-------------+-----------+-----------+------------+
| 684400.00 | 6456.603774 | 24000.00 | 2100.00 | 106 |
+-----------+-------------+-----------+-----------+------------+
mysql> select dep_id, sum(salary) as totalsalary from myemp group by dep_id order
by dep_id;
+--------+-------------+
| dep_id | totalsalary |
+--------+-------------+
| 10 | 4400.00 |
| 20 | 19000.00 |
| 30 | 24900.00 |
| 40 | 6500.00 |
| 50 | 156400.00 |
| 60 | 28800.00 |
| 70 | 10000.00 |
| 80 | 304500.00 |
| 90 | 58000.00 |
| 100 | 51600.00 |
| 110 | 20300.00 |
+--------+-------------+
11 rows in set (0.00 sec)
mysql> select dep_id, sum(salary) as totalsalary from myemp group by dep_id having
dep_id=100;
+--------+-------------+
| dep_id | totalsalary |
+--------+-------------+
| 100 | 51600.00 |
+--------+-------------+
1 row in set (0.01 sec)
mysql> select dep_id, sum(salary) as totalsalary from myemp group by dep_id having
dep_id=20;
+--------+-------------+
| dep_id | totalsalary |
+--------+-------------+
| 20 | 19000.00 |
+--------+-------------+
1 row in set (0.00 sec)
mysql> select dep_id, sum(salary) as totalsalary from myemp group by dep_id having
dep_id in (20,40,60,100);
+--------+-------------+
| dep_id | totalsalary |
+--------+-------------+
| 60 | 28800.00 |
| 100 | 51600.00 |
| 20 | 19000.00 |
| 40 | 6500.00 |
+--------+-------------+
4 rows in set (0.00 sec)
mysql> select dep_id, sum(salary) as totalsalary from myemp group by dep_id having
dep_id in (20,40,60,100) order by dep_id desc;
+--------+-------------+
| dep_id | totalsalary |
+--------+-------------+
| 100 | 51600.00 |
| 60 | 28800.00 |
| 40 | 6500.00 |
| 20 | 19000.00 |
+--------+-------------+
4 rows in set (0.00 sec)
between opertor
---------------
mysql> select * from myemp where salary between 10000 and 50000;
SET Operators
--------------
Set operators are used to combine result of two or more SQL queries into a single
result.
When we are working with SET operators then make sure your sql queries must return
same number
of column and compatible datatypes.
2) intersect
mysql>
mysql> insert into countries_1 values(3, 'Ireland', 'IRE');
Query OK, 1 row affected (0.00 sec)
intersect
---------
Intersect returns only rows that appear in both result sets.
minus
------
If we have the data in different tables, then we can join those 2 tables
based on some
condition, we will get a new table.
we can fetch the data from both tables by using single select statement.
1) inner join
2) left join (left outer join)
3) right join (right outer join)
4) cross join
5) self join
Note:- both the tables must have atleast one common col.
1) inner join
-----------
LEFT JOIN
----------
cross join
----------
mysql> select * from movies cross join members;
self join
---------