常用經(jīng)典SQL語句大全完整版(附詳細講解+實例)
SQL 語言分類
SQL(Structured Query Language)是用于管理關系型數(shù)據(jù)庫的標準語言。它主要分為以下幾類:
DDL (Data Definition Language) - 數(shù)據(jù)定義語言
用于定義數(shù)據(jù)庫結(jié)構(gòu),包括創(chuàng)建、修改和刪除數(shù)據(jù)庫對象(如數(shù)據(jù)庫、表、索引、視圖等)。- 常用語句:
CREATE,ALTER,DROP,DECLARE
- 常用語句:
DML (Data Manipulation Language) - 數(shù)據(jù)操縱語言
用于管理數(shù)據(jù)庫中的數(shù)據(jù),包括查詢、插入、更新和刪除數(shù)據(jù)。- 常用語句:
SELECT,INSERT,UPDATE,DELETE
- 常用語句:
DCL (Data Control Language) - 數(shù)據(jù)控制語言
用于管理數(shù)據(jù)庫用戶的訪問權(quán)限,以及控制事務的提交與回滾。- 常用語句:
GRANT,REVOKE,COMMIT,ROLLBACK
- 常用語句:
1. 數(shù)據(jù)庫管理
1.1 創(chuàng)建和刪除數(shù)據(jù)庫
創(chuàng)建數(shù)據(jù)庫
定義一個新的數(shù)據(jù)庫。CREATE DATABASE database_name;
示例:創(chuàng)建一個名為
CompanyDB的數(shù)據(jù)庫。CREATE DATABASE CompanyDB;
刪除數(shù)據(jù)庫
永久移除一個數(shù)據(jù)庫及其所有內(nèi)容。請謹慎操作,此操作不可逆。DROP DATABASE dbname;
示例:刪除名為
OldCompanyDB的數(shù)據(jù)庫。DROP DATABASE OldCompanyDB;
1.2 數(shù)據(jù)庫備份與恢復 (以 SQL Server 為例)
數(shù)據(jù)庫備份是保證數(shù)據(jù)安全的重要環(huán)節(jié)。
創(chuàng)建備份設備
在SQL Server中,首先需要指定備份文件的存儲位置和名稱。USE master; -- 'disk' 指定備份類型為磁盤文件 -- 'testBack' 是備份設備名 -- 'c:\mssql7backup\MyNwind_1.dat' 是備份文件的完整路徑和文件名 EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat';
執(zhí)行備份
使用BACKUP DATABASE命令將數(shù)據(jù)庫備份到指定的設備。-- 'pubs' 是要備份的數(shù)據(jù)庫名 BACKUP DATABASE pubs TO testBack;
注意:
BACKUP DATABASE語句支持更多選項,如WITH DIFFERENTIAL(差異備份),WITH COMPRESSION(壓縮備份) 等。
2. 表操作 (DDL)
2.1 創(chuàng)建新表
定義表的結(jié)構(gòu),包括列名、數(shù)據(jù)類型、約束等。
CREATE TABLE tabname (
col1 type1 [CONSTRAINT constraint_name] PRIMARY KEY [AUTO_INCREMENT/IDENTITY(seed, increment)], -- 主鍵,可自增長
col2 type2 [NOT NULL] [UNIQUE], -- 非空,唯一
col3 type3 [DEFAULT default_value], -- 默認值
col4 type4,
...
);示例:創(chuàng)建一個名為 Employees 的表。
CREATE TABLE Employees (
EmployeeID INT PRIMARY KEY AUTO_INCREMENT, -- 員工ID,主鍵,自增長
FirstName VARCHAR(50) NOT NULL, -- 名,非空
LastName VARCHAR(50) NOT NULL, -- 姓,非空
Email VARCHAR(100) UNIQUE, -- 郵箱,唯一
HireDate DATE DEFAULT GETDATE(), -- 入職日期,默認為當前日期
Salary DECIMAL(10, 2) -- 工資
);- 說明:
INT,VARCHAR,DATE,DECIMAL是常見的數(shù)據(jù)類型。PRIMARY KEY指定主鍵,用于唯一標識行。AUTO_INCREMENT(MySQL) 或IDENTITY(SQL Server) 可實現(xiàn)自增長。NOT NULL約束確保列必須有值。UNIQUE約束確保列中的所有值都是唯一的。DEFAULT指定列的默認值。
2.2 根據(jù)現(xiàn)有表創(chuàng)建表
有兩種方式:復制表結(jié)構(gòu)(不含數(shù)據(jù))或復制表結(jié)構(gòu)及數(shù)據(jù)。
復制表結(jié)構(gòu) (不含數(shù)據(jù))
此方法僅復制表的定義。-- SQL Server 語法 SELECT * INTO new_table FROM old_table WHERE 1 = 0; -- 1=0 確保不復制任何數(shù)據(jù) -- MySQL/PostgreSQL 語法 CREATE TABLE new_table LIKE old_table;
復制表結(jié)構(gòu)和數(shù)據(jù)
將查詢結(jié)果插入到新表中。CREATE TABLE tab_new AS SELECT col1, col2, ... FROM tab_old WHERE condition;
示例:復制
Employees表的結(jié)構(gòu)和部分數(shù)據(jù)到EmployeeBackup表。CREATE TABLE EmployeeBackup AS SELECT EmployeeID, FirstName, LastName, Salary FROM Employees WHERE HireDate < '2023-01-01';
2.3 刪除表
永久刪除一個表及其所有數(shù)據(jù)。
DROP TABLE tabname;
示例:刪除 EmployeeBackup 表。
DROP TABLE EmployeeBackup;
2.4 修改表結(jié)構(gòu) (ALTER TABLE)
增加列
向現(xiàn)有表中添加新列。ALTER TABLE tabname ADD column_name type [CONSTRAINT constraint_name] [DEFAULT default_value];
示例:為
Employees表添加Department列。ALTER TABLE Employees ADD Department VARCHAR(50);
刪除列
從表中移除一列。ALTER TABLE tabname DROP COLUMN column_name; -- 標準SQL -- 或 SQL Server: ALTER TABLE tabname DROP column_name;
示例:移除
Employees表的Email列。ALTER TABLE Employees DROP COLUMN Email;
修改列屬性
更改列的數(shù)據(jù)類型、約束等。具體語法因數(shù)據(jù)庫系統(tǒng)而異。
示例 (MySQL):修改Employees表的Department列為VARCHAR(100)。ALTER TABLE Employees MODIFY COLUMN Department VARCHAR(100);
示例 (SQL Server):修改
Employees表的Department列為VARCHAR(100)。ALTER TABLE Employees ALTER COLUMN Department VARCHAR(100);
添加和刪除主鍵
為表添加或移除主鍵約束。-- 添加主鍵 ALTER TABLE tabname ADD CONSTRAINT pk_tabname PRIMARY KEY (col1, col2); -- 允許復合主鍵 -- 刪除主鍵 (SQL Server/Oracle) ALTER TABLE tabname DROP CONSTRAINT pk_tabname; -- 刪除主鍵 (MySQL) ALTER TABLE tabname DROP PRIMARY KEY;
示例:為
Orders表添加主鍵。ALTER TABLE Orders ADD CONSTRAINT pk_Orders PRIMARY KEY (OrderID);
2.5 創(chuàng)建和刪除索引
索引可以顯著提高 SELECT 查詢的速度,但會增加 INSERT, UPDATE, DELETE 操作的開銷。
創(chuàng)建索引
為表的一列或多列創(chuàng)建索引。UNIQUE關鍵字表示該索引列的值必須唯一。CREATE [UNIQUE] INDEX idxname ON tabname (col1 [ASC|DESC], col2 [ASC|DESC], ...);
示例:為
Employees表的LastName列創(chuàng)建索引。CREATE INDEX idx_lastname ON Employees (LastName);
示例:為
Employees表的FirstName和LastName創(chuàng)建復合唯一索引。CREATE UNIQUE INDEX idx_fullname ON Employees (FirstName, LastName);
刪除索引
移除已有的索引。DROP INDEX idxname ON tabname; -- 標準SQL (有些數(shù)據(jù)庫系統(tǒng)不支持ON tabname) -- 或 SQL Server: DROP INDEX idxname FROM tabname; -- 或 MySQL: DROP INDEX idxname ON tabname;
示例:刪除
Employees表的idx_lastname索引。DROP INDEX idx_lastname ON Employees;
3. 視圖操作 (DDL/DML)
視圖(View)是一個虛擬表,它基于一個 SQL 查詢語句的結(jié)果集。視圖不存儲實際數(shù)據(jù),但可以像表一樣被查詢。
3.1 創(chuàng)建視圖
CREATE VIEW viewname AS SELECT column1, column2, ... FROM tablename WHERE condition;
示例:創(chuàng)建一個視圖,顯示所有部門為 ‘Sales’ 的員工姓名和入職日期。
CREATE VIEW SalesEmployees AS SELECT FirstName, LastName, HireDate FROM Employees WHERE Department = 'Sales';
3.2 刪除視圖
DROP VIEW viewname;
示例:刪除 SalesEmployees 視圖。
DROP VIEW SalesEmployees;
4. 基本數(shù)據(jù)操作 (DML)
4.1 選擇數(shù)據(jù) (SELECT)
查詢數(shù)據(jù)庫中的數(shù)據(jù)。
選擇所有列
使用*選擇表中的所有列。SELECT * FROM table1;
選擇特定列
指定需要顯示的列名。SELECT column1, column2, ... FROM table1;
帶條件查詢 (WHERE)
使用WHERE子句過濾滿足特定條件的記錄。SELECT * FROM table1 WHERE condition;
條件操作符:
=,!=/<>,>,<,>=,<=,BETWEEN,LIKE,IN,IS NULL,IS NOT NULL。
邏輯操作符:AND,OR,NOT。示例:查詢
Employees表中工資高于 50000 的員工。SELECT EmployeeID, FirstName, LastName, Salary FROM Employees WHERE Salary > 50000;
示例:查詢
Employees表中姓氏為 ‘Smith’ 且入職日期在 2022 年后的員工。SELECT FirstName, LastName, HireDate FROM Employees WHERE LastName = 'Smith' AND HireDate > '2022-01-01';
排序 (ORDER BY)
對查詢結(jié)果進行升序 (ASC) 或降序 (DESC) 排序。SELECT column1, column2 FROM table1 ORDER BY column1 [ASC|DESC], column2 [ASC|DESC];
示例:按工資降序排列所有員工信息。
SELECT * FROM Employees ORDER BY Salary DESC;
分組 (GROUP BY) 與聚合函數(shù)
將數(shù)據(jù)按某一列或多列分組,并對每組數(shù)據(jù)進行聚合計算。
常用聚合函數(shù):COUNT(*)/COUNT(column): 計數(shù)SUM(column): 求和AVG(column): 求平均值MAX(column): 求最大值MIN(column): 求最小值
SELECT column1, COUNT(*) AS total_count, SUM(column2) AS total_sum FROM table1 WHERE condition GROUP BY column1 HAVING COUNT(*) > 10 -- 對分組后的結(jié)果進行過濾 ORDER BY column1;
示例:計算每個部門的員工人數(shù)和平均工資。
SELECT Department, COUNT(*) AS EmployeeCount, AVG(Salary) AS AverageSalary FROM Employees GROUP BY Department;
4.2 插入數(shù)據(jù) (INSERT)
向表中添加新記錄。
插入所有列的值
值的順序必須與表中列的順序一致。INSERT INTO table1 VALUES (value1, value2, ...);
插入指定列的值
指定列名,可以不按順序,或只插入部分列。INSERT INTO table1 (field1, field2, field3) VALUES (value1, value2, value3);
插入查詢結(jié)果
將另一個SELECT語句的結(jié)果插入到表中。INSERT INTO table1 (field1, field2) SELECT column1, column2 FROM another_table WHERE condition;
示例:插入一條新員工記錄。
INSERT INTO Employees (FirstName, LastName, Email, HireDate, Salary, Department)
VALUES ('Alice', 'Wonderland', 'alice@example.com', '2023-10-01', 60000.00, 'Marketing');示例:將現(xiàn)有員工的部門信息復制到新員工表中。
INSERT INTO EmployeeBackup (EmployeeID, FirstName, LastName, Salary) SELECT EmployeeID, FirstName, LastName, Salary FROM Employees WHERE Department = 'Sales' AND Salary > 70000;
4.3 刪除數(shù)據(jù) (DELETE)
移除表中的記錄。
DELETE FROM table1 WHERE condition;
- 重要:如果
WHERE子句被省略,將刪除表中的所有記錄。
示例:刪除 Employees 表中工資低于 40000 的所有員工。
DELETE FROM Employees WHERE Salary < 40000;
示例:刪除所有部門為 ‘Temporary’ 的員工。
DELETE FROM Employees WHERE Department = 'Temporary';
4.4 更新數(shù)據(jù) (UPDATE)
修改表中現(xiàn)有記錄的字段值。
UPDATE table1 SET field1 = value1, field2 = value2, ... WHERE condition;
- 重要:如果
WHERE子句被省略,將更新表中所有記錄。
示例:將員工ID為 101 的員工的工資提高 10%。
UPDATE Employees SET Salary = Salary * 1.10 WHERE EmployeeID = 101;
示例:將所有部門為 ‘IT’ 的員工的部門改為 ‘Technology’。
UPDATE Employees SET Department = 'Technology' WHERE Department = 'IT';
5. 高級查詢與連接
5.1 集合運算符
用于合并多個 SELECT 語句的結(jié)果集。
UNION:合并結(jié)果集,并自動去除重復的行。UNION ALL:合并結(jié)果集,保留所有行(包括重復行)。EXCEPT(或MINUSin Oracle):返回第一個SELECT語句的結(jié)果集,但不包含第二個SELECT語句結(jié)果集中的行。INTERSECT:返回兩個SELECT語句結(jié)果集中都存在的行。
要求:參與集合運算的 SELECT 語句必須具有相同數(shù)量的列,且對應列的數(shù)據(jù)類型兼容。
示例:獲取所有男性員工的姓名和所有女性員工的姓名(合并且去重)。
SELECT FirstName, LastName FROM Employees WHERE Gender = 'Male' UNION SELECT FirstName, LastName FROM Employees WHERE Gender = 'Female';
5.2 連接 (JOIN)
將來自兩個或多個表的記錄組合起來,基于它們之間的關聯(lián)列。
INNER JOIN (內(nèi)連接):
返回兩個表中連接列的值匹配的行。這是默認的連接類型(如果只寫JOIN)。SELECT t1.col1, t2.col2 FROM table1 t1 INNER JOIN table2 t2 ON t1.common_column = t2.common_column;
LEFT JOIN (左外連接):
返回左表(table1)的所有行,以及右表(table2)中匹配的行。如果右表中沒有匹配項,則右表列顯示為NULL。SELECT t1.col1, t2.col2 FROM table1 t1 LEFT JOIN table2 t2 ON t1.common_column = t2.common_column;
RIGHT JOIN (右外連接):
返回右表(table2)的所有行,以及左表(table1)中匹配的行。如果左表中沒有匹配項,則左表列顯示為NULL。SELECT t1.col1, t2.col2 FROM table1 t1 RIGHT JOIN table2 t2 ON t1.common_column = t2.common_column;
FULL OUTER JOIN (全外連接):
返回左表和右表中所有不匹配的行,以及匹配的行。如果某側(cè)沒有匹配,則該側(cè)列顯示為NULL。SELECT t1.col1, t2.col2 FROM table1 t1 FULL OUTER JOIN table2 t2 ON t1.common_column = t2.common_column;
注意:
FULL OUTER JOIN在 MySQL 中不受支持,可使用LEFT JOIN和RIGHT JOIN的UNION來模擬。
示例:查詢所有員工及其所在的部門名稱。假設 Employees 表有 DepartmentID 列,Departments 表有 DepartmentID 和 DepartmentName 列。
SELECT
e.FirstName,
e.LastName,
d.DepartmentName
FROM Employees e
LEFT JOIN Departments d ON e.DepartmentID = d.DepartmentID;示例:查詢沒有分配部門的員工。
SELECT e.FirstName, e.LastName FROM Employees e LEFT JOIN Departments d ON e.DepartmentID = d.DepartmentID WHERE d.DepartmentID IS NULL; -- 或者 WHERE d.DepartmentName IS NULL
5.3 統(tǒng)計與聚合查詢
如前文 GROUP BY 部分所述,聚合函數(shù)用于對一組行進行計算。
總數(shù)
SELECT COUNT(*) AS total_records FROM your_table;
示例:統(tǒng)計
Employees表的總記錄數(shù)。SELECT COUNT(*) AS TotalEmployees FROM Employees;
求和
SELECT SUM(numeric_column) AS total_sum FROM your_table;
示例:計算
Employees表的總工資。SELECT SUM(Salary) AS TotalPayroll FROM Employees;
平均值
SELECT AVG(numeric_column) AS average_value FROM your_table;
示例:計算
Employees表的平均工資。SELECT AVG(Salary) AS AverageSalary FROM Employees;
最大值
SELECT MAX(column) AS max_value FROM your_table;
示例:查找
Employees表中最高工資。SELECT MAX(Salary) AS HighestSalary FROM Employees;
最小值
SELECT MIN(column) AS min_value FROM your_table;
示例:查找
Employees表中最低工資。SELECT MIN(Salary) AS LowestSalary FROM Employees;
6. 子查詢與表復制
6.1 子查詢 (Subquery)
子查詢是在 WHERE, FROM, SELECT 子句中嵌套的查詢語句,用于返回數(shù)據(jù)供外部查詢使用。
在 WHERE 子句中使用子查詢
通常與IN,NOT IN,=,!=,>,<,ANY,ALL等操作符結(jié)合使用。-- 查找工資高于平均工資的員工 SELECT FirstName, LastName, Salary FROM Employees WHERE Salary > (SELECT AVG(Salary) FROM Employees); -- 查找在'Sales'部門工作的員工(假設DepartmentID是Sales的ID) SELECT FirstName, LastName FROM Employees WHERE DepartmentID IN (SELECT DepartmentID FROM Departments WHERE DepartmentName = 'Sales');
在 FROM 子句中使用子查詢 (派生表)
子查詢的結(jié)果集可以作為一個臨時表(派生表)被外部查詢使用。SELECT * FROM (SELECT EmployeeID, FirstName, LastName FROM Employees WHERE Salary > 50000) AS HighSalaryEmployees;
在 SELECT 子句中使用子查詢 (標量子查詢)
子查詢返回單個值,用于為外部查詢的每一行提供一個計算值。SELECT e.FirstName, e.LastName, e.Salary, (SELECT AVG(Salary) FROM Employees) AS GlobalAverageSalary -- 顯示全局平均工資 FROM Employees e;
6.2 復制表結(jié)構(gòu)與數(shù)據(jù)
復制表結(jié)構(gòu) (不含數(shù)據(jù))
創(chuàng)建與源表結(jié)構(gòu)相同但為空的新表。-- SQL Server 語法 SELECT * INTO new_table FROM old_table WHERE 1=0; -- MySQL/PostgreSQL 語法 CREATE TABLE new_table LIKE old_table;
復制數(shù)據(jù) (插入)
將源表中選定的數(shù)據(jù)插入到目標表中(目標表需已存在或與源表結(jié)構(gòu)一致)。INSERT INTO b (col1, col2, col3) SELECT d, e, f FROM a WHERE condition;
示例:將2023年入職的員工數(shù)據(jù)復制到
EmployeeArchive表。INSERT INTO EmployeeArchive (EmployeeID, FirstName, LastName, HireDate) SELECT EmployeeID, FirstName, LastName, HireDate FROM Employees WHERE YEAR(HireDate) = 2023;
7. 隨機數(shù)據(jù)處理與重復數(shù)據(jù)處理
7.1 隨機選擇記錄
從表中隨機抽取一定數(shù)量的記錄。不同數(shù)據(jù)庫系統(tǒng)語法略有差異。
SQL Server
使用ORDER BY NEWID()。SELECT TOP 10 * FROM tablename ORDER BY NEWID();
MySQL
使用ORDER BY RAND()。SELECT * FROM tablename ORDER BY RAND() LIMIT 10;
PostgreSQL
使用ORDER BY RANDOM()。SELECT * FROM tablename ORDER BY RANDOM() LIMIT 10;
7.2 刪除重復記錄
識別并保留每組重復記錄中的一條(通常是ID最大或最小的),刪除其余的。
通用方法 (使用ROW_NUMBER或MAX/MIN ID)
假設id是自增主鍵,col1,col2是用于判斷重復的列。-- 方法一:使用 ROW_NUMBER() (SQL Server, PostgreSQL, Oracle) WITH CTE AS ( SELECT id, col1, col2, ROW_NUMBER() OVER(PARTITION BY col1, col2 ORDER BY id DESC) as rn FROM tablename ) DELETE FROM tablename WHERE id IN (SELECT id FROM CTE WHERE rn > 1); -- 方法二:使用 MAX/MIN ID (兼容性更廣) -- 刪除除最大ID之外的所有重復記錄 DELETE FROM tablename WHERE id NOT IN (SELECT MAX(id) FROM tablename GROUP BY col1, col2, ...);示例:刪除
Products表中ProductName和Category重復的記錄,保留ProductID最大的那條。DELETE FROM Products WHERE ProductID NOT IN ( SELECT MAX(ProductID) FROM Products GROUP BY ProductName, Category );
8. 數(shù)據(jù)庫和表信息查詢
用于查看數(shù)據(jù)庫的元數(shù)據(jù)(關于數(shù)據(jù)的數(shù)據(jù))。
列出數(shù)據(jù)庫中的所有用戶表
不同數(shù)據(jù)庫系統(tǒng)語法不同。-- SQL Server SELECT name FROM sysobjects WHERE type = 'U'; -- U 代表用戶表 -- MySQL SHOW TABLES; -- PostgreSQL SELECT tablename FROM pg_tables WHERE schemaname = 'public'; -- 'public' 是默認模式
列出指定表的列信息
查看表的列名、數(shù)據(jù)類型、是否可空等。-- SQL Server SELECT name FROM syscolumns WHERE id = OBJECT_ID('TableName'); -- MySQL SHOW COLUMNS FROM TableName; -- 或 DESCRIBE TableName; -- PostgreSQL SELECT column_name, data_type, is_nullable FROM information_schema.columns WHERE table_name = 'TableName';示例:查看
Employees表的列信息 (MySQL 語法)。DESCRIBE Employees;
9. 事務管理 (DCL)
事務是一組數(shù)據(jù)庫操作的邏輯單元。事務要么全部成功執(zhí)行,要么全部不執(zhí)行,以保證數(shù)據(jù)的一致性和完整性。
9.1 事務控制語句
BEGIN TRANSACTION/START TRANSACTION
標記事務的開始。BEGIN TRANSACTION; -- 或 START TRANSACTION;
ROLLBACK
回滾事務,撤銷自BEGIN TRANSACTION以來的所有修改。ROLLBACK;
COMMIT
提交事務,將所有修改永久保存到數(shù)據(jù)庫。COMMIT;
9.2 事務管理示例
一個典型的轉(zhuǎn)賬場景:從賬戶A扣款,給賬戶B加款。
BEGIN TRANSACTION;
-- 1. 從賬戶 A 扣除 100 元
UPDATE accounts SET balance = balance - 100 WHERE account_id = 1;
-- 2. 檢查扣款操作是否成功 (SQL Server 的 @@ERROR, 其他數(shù)據(jù)庫可能有類似機制或異常處理)
IF @@ERROR <> 0
BEGIN
-- 如果發(fā)生錯誤,回滾事務
ROLLBACK TRANSACTION;
PRINT 'Error: Failed to debit account 1. Transaction rolled back.';
END
ELSE
BEGIN
-- 3. 給賬戶 B 增加 100 元
UPDATE accounts SET balance = balance + 100 WHERE account_id = 2;
-- 4. 檢查加款操作是否成功
IF @@ERROR <> 0
BEGIN
-- 如果發(fā)生錯誤,回滾事務
ROLLBACK TRANSACTION;
PRINT 'Error: Failed to credit account 2. Transaction rolled back.';
END
ELSE
BEGIN
-- 5. 如果所有操作都成功,提交事務
COMMIT TRANSACTION;
PRINT 'Transaction completed successfully. Balances updated.';
END
END說明:
BEGIN TRANSACTION;開啟一個事務。UPDATE語句執(zhí)行實際的數(shù)據(jù)修改。IF @@ERROR <> 0(SQL Server 語法) 用于檢測上一條SQL語句是否執(zhí)行出錯。在其他數(shù)據(jù)庫中,您可能需要使用TRY...CATCH塊或檢查事務的狀態(tài)。ROLLBACK;用于撤銷所有未提交的更改。COMMIT;用于使所有更改永久生效。
通過掌握這些SQL語句,您將能夠高效、準確地進行數(shù)據(jù)庫管理和數(shù)據(jù)操作,確保數(shù)據(jù)操作的完整性和安全性。
總結(jié)
到此這篇關于常用經(jīng)典SQL語句大全完整版的文章就介紹到這了,更多相關SQL語句常用大全內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
windows?64位下mysql8.0.25安裝配置教程(最詳細!)
之前一直在用 5.7 版本,竟然一下子跳到 8.0了,下面這篇文章主要給大家介紹了關于在windows?64位下mysql8.0.25安裝配置教程,文章通過圖文介紹的非常詳細,需要的朋友可以參考下2022-03-03
MySql采用GROUP_CONCAT合并多條數(shù)據(jù)顯示的方法
這篇文章主要介紹了MySql采用GROUP_CONCAT合并多條數(shù)據(jù)顯示的方法,是MySQL數(shù)據(jù)庫程序設計中常見的實用技巧,需要的朋友可以參考下2014-10-10

