首页 > 数据库 >SQL常用语法

SQL常用语法

时间:2023-07-14 18:24:21浏览次数:35  
标签:常用 name -- employees 语法 employee SQL department id

SQL常用语法

-- 创建表
CREATE TABLE employees(
   employee_id NUMBER(6),
   first_name VARCHAR2(20),
   last_name VARCHAR2(25),
   email VARCHAR2(25),
   phone_number VARCHAR2(20),
   hire_date DATE,
   job_id VARCHAR2(10),
   salary NUMBER(8,2),
   commission_pct NUMBER(2,2),
   manager_id NUMBER(6),
   department_id NUMBER(4)
);

-- 插入数据
INSERT INTO employees(employee_id, first_name, last_name, email, phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id) 
VALUES (100, 'John', 'Smith', '[email protected]', '515.123.4567', TO_DATE('01-JAN-00', 'DD-MON-RR'), 'IT_PROG', 20000, null, 103, 60);

-- 更新数据
UPDATE employees 
SET salary = 25000 
WHERE employee_id = 100;

-- 删除数据
DELETE FROM employees 
WHERE employee_id = 100;

-- 创建索引
CREATE INDEX emp_name_ix 
ON employees (last_name);

-- 添加主键约束
ALTER TABLE employees 
ADD CONSTRAINT emp_emp_id_pk PRIMARY KEY (employee_id);

-- 添加外键约束
ALTER TABLE employees 
ADD CONSTRAINT emp_dept_fk FOREIGN KEY (department_id) 
REFERENCES departments(department_id);

-- 创建视图
CREATE VIEW dept_sal_vu AS
SELECT d.department_name, e.salary 
FROM departments d JOIN employees e
ON (d.department_id = e.department_id);

-- 事务控制
COMMIT; -- 提交事务
ROLLBACK; -- 回滚事务
SAVEPOINT savept1; -- 设置保存点
ROLLBACK TO savept1; -- 回滚到保存点

标签:常用,name,--,employees,语法,employee,SQL,department,id
From: https://www.cnblogs.com/suixingc/p/17554696.html

相关文章

  • oracle数据库表常用分区创建
    按年进行分区createtabletest_part(IDNUMBER(20)notnull,REMARKVARCHAR2(1000),create_timeDATE)PARTITIONBYRANGE(CREATE_TIME)INTERVAL(numtoyminterval(1,'year'))(partitionpart_t01valueslessthan(to_date('2018-11-01','yyy......
  • SQL29 计算用户的平均次日留存率
    SQL29计算用户的平均次日留存率描述题目:现在运营想要查看用户在某天刷题后第二天还会再来刷题的平均概率。请你取出相应数据。示例:question_practice_detailiddevice_idquest_idresultdate......
  • Mysqll判空的一个坑
    Mysql使用<>''判空时数值类型字段会过滤掉值为0的数据SELECT*FROMstudentSELECT*FROMstudentWHEREuserid<>''文本类型字段可以过滤掉为null和空串的数据并且不会把为0的数据过滤SELECT*FROMstudentWHERESname<>''......
  • docker 检查SQL Server实例的TCP/IP协议是否已启用
    检查SQLServer实例的TCP/IP协议是否已启用作为一名经验丰富的开发者,我将帮助你学习如何检查SQLServer实例的TCP/IP协议是否已启用。以下是整个流程以及每一步需要做的事情。流程步骤描述1连接到SQLServer实例2查询是否已启用TCP/IP协议3根据查询结果判断TC......
  • PostgreSQL技术大讲堂 - 第22讲:CLOG作用与管理
     PostgreSQL从小白到专家,是从入门逐渐能力提升的一个系列教程,内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容,希望对热爱PG、学习PG的同学们有帮助,欢迎持续关注CUUGPG技术大讲堂。第22讲:CLOG作用与管理内容1:PostgreSQLCLOG概述内容2:CLOG......
  • mysql binlog
    mysql二进制日志(binnarylog)binlog记录了对MySQL数据库执行更改的所有操作binlog是记录所有数据库表结构变更(例如CREATE、ALTERTABLE…)以及表数据修改(INSERT、UPDATE、DELETE…)的二进制日志。不会记录SELECT和SHOW这类操作,因为这类操作对数据本身并没有修改,但可以通过查询通......
  • Oracle、MySQL、HQL的语法差异
    Oracle、MySQL、HQL查询语句的差异SQL是结构化查询语言,执行Select(选择)、Update(更新)、Delete(删除)和Insert(插入)等数据任务。关系数据库是指基于关系模型的数据库。在关系模型中,用于存储数据的逻辑结构就是二维表(Table)。表由行和列组成,行也称为记录,代表了单个实体;列也称为字段,代表......
  • 刷力扣高频SQL50题(基础)总结
    此随笔仅总结个人刷SQL题时,突然不会使用的某函数或某方法,大佬勿看勿喷regexp'正则表达式'一般用于邮箱校验例题:查找拥有有效邮箱的用户select*fromuserswheremailregexp'^[a-zA-Z]+[a-zA-Z0-9_\\./\\-]*@leetcode\\.com$'窗口函数窗口函数讲解函数+over(pa......
  • MySQL中,存储小数类型的FLOAT、DOUBLE和DECIMAL常见面试问题
    面试考察范围在MySQL中,关于FLOAT、DOUBLE和DECIMAL类型的面试题常涉及以下几个方面:数据存储方式:问答关于这些类型数据在内存中的存储方式和字节大小的问题,如FLOAT占用多少字节,DOUBLE占用多少字节等。精度和范围:询问不同类型对数字精度和范围的影响,比如FLOAT能存储的有效位......
  • mysql8 索引、视图、事务、存储过程、触发器
    一、视图1、2、 二、触发器1、 三、事务(重要)1、  四、存储过程1、  五、函数1、  六、流程控制1、  七、索引(重要)1、 ......