ORACLE常用语句
ORACLE
select * from table
select name,sno from table
去重
select distinct country from table
where子语句
提取满足特定条件的记录
select * from table where country='CN'
AND
满足两个条件的记录
select * from table where country='CN' and sex='男'
OR
满足两个条件中的其中一个
select * from table where country='CN' or sex='男'
ORDER BY ASC升序 DESC降序(默认)
排序
select * from table orader by age asc
多列排序
select * from table orader by age,sex
插入语句
INSERT INTO table_name
VALUES (value1,value2,value3,...);
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
更新语句
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
(省略wherer所有的语句将被更新)
DELETE
DELETE FROM table_name WHERE condition;
ROWNUM(条数)
select * from where rownum<=100
模糊查询
select * from table where name like 'G%'
'G%'以G开头的所有记录
'%G'以G结尾的所有记录
'%oo%'包含所有oo的记录
IN
(在 WHERE 子句中规定多个值)
select * from table where age in(50,30);
BETWEEN
(介于两个值之间的数据范围内的值)
select * from tabel where score between 1 and 20;
select * from tabel where (score between 1 and 20) not in ('USA','inda'');
AS
(为表名称或列名称指定别名)
select name as a, sex as b from table;
JOIN(连接)
INNER JOIN:如果表中有至少一个匹配,则返回行
LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行
FULL JOIN:只要其中一个表中存在匹配,则返回行
内连接(INNER JOIN =JOIN)
SELECT Websites.id, Websites.name, access_log.count, access_log.date
FROM Websites
INNER JOIN access_log
ON Websites.id=access_log.site_id;
左外连接(left join = left outer join )
SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name=table2.column_name;
右外连接
(在某些数据库中right join =right outer join)
SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name=table2.column_name;
FULL OUTER JOIN(mysql不支持)
只要其中一个表中存在匹配,则返回行.
FULL OUTER JOIN 关键字结合了 LEFT JOIN 和 RIGHT JOIN 的结果
SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name=table2.column_name;
UNION
(用于合并两个或多个 SELECT 语句的结果集)
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;
如果允许重复的值,请使用 UNION ALL
UNION默认选取不同的值
SELECT INTO(mysql不支持)
(从一个表复制数据,然后把数据插入到另一个新表中)
CREATE TABLE 新表
AS
SELECT * FROM 旧表
INSERT INTO SELECT
(只复制指定的列插入到另一个已存在的表中)
INSERT INTO table2
(column_name(s))
SELECT column_name(s)
FROM table1;
CREATE DATABASE dbname;(创建表)
CREATE TABLE Persons
(
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);