Oracle 常用基本语句

98 阅读1分钟

新增

-- 新增数据
INSERT INTO TABLE.NAME (列名, column_2, column_3, ... column_n) 
VALUES( 值, value_2, value_3, ..., value_n)

查找

-- 查找全部
SELECT * FROM WHERE TABLE.NAME

-- 查找部分字段
SELECT ID,NAME FROM TABLE.NAME

-- 条件查询
SELECT * FROM TABLE.NAME WHERE ID = 1 AND NAME = '张三'

-- 模糊查询
SELECT * FROM TABLE.NAME WHERE NAME LIKE '%李四%'  //无法匹配空数据
SELECT * FROM TABLE.NAME WHERE NAV(NAME,' ') LIKE '%李四%' //可以匹配空数据

更新

-- 更新李四性别为女,年龄为18
UPDATE TABLE.NAME SET SEX = '女', AGE = 18 WHERE NAME = '李四'

删除

-- DELETE`允许您基于一个或多个条件删除行。
-- 它会为每个删除的行产生一个单独的行删除提示。
-- DELETE 语句可以从表中删除行,但仍然保留这些行的空间。

-- 条件删除
DELETE FROM TABLE.NAME WHERE ID = 1
-- 删除所有数据
DELETE FROM TABLE.NAME




-- `TRUNCATE`是一个DDL(数据定义语言)操作,它删除表中的所有行,但不会记录任何单独的行删除提示。
-- 与`DELETE`不同,`TRUNCATE`释放了与表相关的空间。
-- 由于`TRUNCATE`是一个DDL操作,所以它不能使用WHERE子句。

-- 删除所有数据
TRUNCATE TABLE  TABLE.NAME



-- 删除表及其结构,并且释放与表相关的空间。请注意,一旦执行这个操作,表中的数据将无法恢复(除非有备份)。
DROP TABLE TABLE.NAME

复制

-- 复制表结构
CREATE TABLE NEW.TABLE.NAME AS SELECT * FROM TABLE.NAME WHERE FALSE
-- 复制数据
INSERT INTO NEW.TABLE.NAME SELECT * FROM TABLE.NAME
-- 复制表和数据
CREATE TABLE NEW.TABLE.NAME AS SELECT * FROM TABLE.NAME