常见的数据表操作语句-增删改查

Posted jly1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常见的数据表操作语句-增删改查相关的知识,希望对你有一定的参考价值。

INSERT INTO 插入一条语句

-- INSERT INTO
INSERT INTO customers (
	first_name, 
	last_name,
    birth_date,
    address,
    city,
    state,
    points)
VALUES (
    ‘John‘, 
    ‘Smith‘,
    ‘1990-01-01‘,
    ‘address‘,
    ‘city‘,
    ‘CA‘,
    DEFAULT);

INSERT INTO shippers (name)
VALUES  (‘Shipper1‘),
	(‘Shipper2‘),
        (‘Shipper3‘);

-- Exercise
-- Insert three rows in the products table
INSERT INTO products(
	name,
    quantity_in_stock,
    unit_price)
VALUES
	(‘tomato1‘, 12, 24),
	(‘tomato2‘, 1.2, 23),
    (‘tomato2‘, 1.4, 12);
    
-- 快速复制一张表alter
CREATE TABLE orders_archived AS
SELECT * FROM orders;
-- 插入一部分
INSERT INTO orders_archived
SELECT *
FROM orders
WHERE order_date < ‘2019-01-01‘;

UPDATE 更新数据

-- update
USE sql_invoicing;
UPDATE invoices
SET payment_total = invoice_total * 0.5, payment_date = due_date
WHERE invoice_id = 3;

-- 多条记录更新
UPDATE invoices
SET payment_total = invoice_total * 0.5, payment_date = due_date
WHERE invoice_id IN (3, 4);

-- Exercies
-- Write a SQL statement to 
-- give any customers born before 1990
-- 50 extra points
USE sql_store;
UPDATE customers
SET points = points + 50
WHERE birth_date > ‘1990-01-01‘;

-- UPDATE

UPDATE invoices
SET payment_total = invoice_total * 0.5, payment_date = due_date
WHERE invoice_id = 
			(SELECT client_id
			FROM clients
			WHERE name = ‘Myworks‘);
            
UPDATE invoices
SET payment_total = invoice_total * 0.5, payment_date = due_date
WHERE invoice_id IN
			(SELECT client_id
			FROM clients
			WHERE state IN (‘CA‘, ‘NY‘))

删除数据 不常用操作

-- 删除所有记录
DELETE FROM invoices;

DELETE FROM invoices
WHERE invoice_id = (
		SELECT *
		FROM clients
		WHERE name = ‘Myworks‘
)

-- 恢复数据库

以上是关于常见的数据表操作语句-增删改查的主要内容,如果未能解决你的问题,请参考以下文章

增删改查sql语句

增删改查sql语句

Mysql(2.2)数据操作(增删改查)、事务控制

sql 常见增删改查

关于SQL的常用操作(增删改查)

Sqlserver 实际开发中常见的数据库操作增删改查----增