欧美午夜欧美,台湾成人av,久久av一区,最近看过的日韩成人

電子開發網

電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 電子開發網 >> 編程學習 >> 數據庫語言 >> 正文

SQL語言入門(非常詳細)零基礎入門到精通,收藏這一篇就夠了_sql語言的概念

作者:佚名    文章來源:網站整理    點擊數:    更新時間:2024/10/1

SQL數據庫 

一、SQL 概述

1、什么是 SQL

SQL 指結構化查詢語言,全稱是 Structured Query Language。

SQL 讓您可以訪問和處理數據庫,包括數據插入、查詢、更新和刪除。

SQL 在1986年成為 ANSI(American National Standards Institute 美國國家標準化組織)的一項標準,在 1987 年成為國際標準化組織(ISO)標準。

2、SQL語言的版本歷史

在1970年代初,由IBM公司San Jose,California研究實驗室的埃德加·科德發表將數據組成表格的應用原則(Codd’s Relational Algebra)。1974年,同一實驗室的D.D.Chamberlin和R.F. Boyce對Codd’s Relational Algebra在研制關系數據庫管理系統System R中,研制出一套規范語言-SEQUEL(Structured English QUEry Language),并在1976年11月的IBM Journal of R&D上公布新版本的SQL(叫SEQUEL/2)。1980年改名為SQL。

1979年ORACLE公司首先提供商用的SQL,IBM公司在DB2 和SQL/DS數據庫系統中也實現了SQL。

1986年10月,美國ANSI采用SQL作為關系數據庫管理系統的標準語言(ANSI X3. 135-1986),后為國際標準化組織(ISO)采納為國際標準。

1989年,美國ANSI采納在ANSI X3.135-1989報告中定義的關系數據庫管理系統的SQL標準語言,稱為ANSI SQL 89, 該標準替代ANSI X3.135-1986版本。該標準為下列組織所采納:

國際標準化組織(ISO),為ISO 9075-1989報告“Database Language SQL With Integrity Enhancement”

美國聯邦政府,發布在The Federal Information Processing Standard Publication(FIPS PUB)127

目前,所有主要的關系數據庫管理系統支持某些形式的SQL, 大部分數據庫打算遵守ANSI SQL89標準。

3、SQL語句基礎語法規范

SQL(Structured Query Language)是用于管理關系型數據庫的標準語言。它的基本語法規范包括以下幾個關鍵部分:

1. SELECT 語句:這是最基本的SQL語句,用于從數據庫中選擇數據。格式通常是 `SELECT column_name(s) FROM table_name WHERE condition`,其中 `column_name(s)` 是要查詢的列,`table_name` 是數據表名,`condition` 是篩選條件。

2. INSERT INTO 語句:用于向表中插入新記錄,格式為 `INSERT INTO table_name (column1, column2,…) VALUES (value1, value2,…)`。

3. UPDATE 語句:用來更新表中的數據,格式為 `UPDATE table_name SET column = new_value WHERE condition`。

4. DELETE FROM 語句:刪除表中滿足特定條件的行,例如 `DELETE FROM table_name WHERE condition`。

5. CREATE TABLE 語句:用于創建新的表,定義列名、數據類型等信息。

6. JOIN 語句:連接兩個或多個表,如 INNER JOIN, LEFT JOIN, RIGHT JOIN 等,用于獲取多個表之間的關聯數據。

7. WHERE 子句:用于指定查詢條件,過濾返回的結果。

8. GROUP BY 和 HAVING 子句:用于對查詢結果進行分組和過濾聚合。

9. ORDER BY 子句:按照指定列對查詢結果進行排序。

10. COMMIT 和 ROLLBACK 命令:前者提交事務,后者回滾事務以撤銷更改。

二、SQL 分類:DDL、DML、DCL、DQL

01、DDL(Data Definition Languages)語句: 即數據庫定義語句,用來創建數據庫中的表、索引、視圖、存儲過程、觸發器等對象。SQLServer DLL語法是指SQL Server 數據庫定義域發的語法規則集合,主要包括創建、修改和刪除數據庫對象的語句。

常用的語句關鍵字有:

【create table 創建表】、【alter table 修改表】、【drop table 刪除表】、【truncate table 刪除表中所有行】、【create index 創建索引】、【drop index 刪除索引】、【comment 注釋】、【rename table 修改表名】

02、DML(Data Manipulation Language)語句: 指的是用于管理數據庫中數據的操作,用來查詢(Select)、添加(Insert)、更新(Update)、刪除(Delete)等

03、DCL(Data Control Language)語句: 即數據控制語句,用于授權/撤銷數據庫及其字段的權限。

常用的語句關鍵字有:

grant授權

revoke取消授權

04、DQL:(Data QueryLanguage)語句: 數據查詢語言

常用的語句關鍵字有:

selet 獲取

where、group by、having、ofder by等過濾條件

事務控制語言

SAVEPOINT 設置保存點

ROLLBACK 回滾

SET TRANSACTION

三、DDL(Data Definition Language):數據定義語言

1、基本操作

1.1操作數據庫:創建庫CREATE DATABASE,刪除庫DROP DATABASE,修改庫ALTER DATABASE。

CREATE DATABASE TestDB;
DROP DATABASE TestDB;
ALTER DATABASE TestDB COLLATE Chinese_PRC_CI_AS;

1.2 數據類型:數字型(int,tinyint,decimal,float等)、日期和時間類型(Date,TIME等)、字符串類型(char,varchar等)。

CREATE TABLE NumTable (
    id INT,
    smallNum TINYINT,
    money DECIMAL(10, 2),
    size FLOAT
);
CREATE TABLE DateTable (
    date_column DATE,
    time_column TIME
);
CREATE TABLE StringTable (
    fixed_length_name CHAR(50),
    variable_length_address VARCHAR(255)
);

1.3 操作表:創建表CREATE TABLE,刪除表DROP TABLE,修改表ALTER TABLE,重命名表 RENAME TABLE。、

CREATE TABLE EmployeeTable (
    ID int,
    Name varchar(255),
    Age int
);
DROP TABLE EmployeeTable;
ALTER TABLE EmployeeTable ADD Email varchar(255);
ALTER TABLE EmployeeTable MODIFY COLUMN Age smallint;
ALTER TABLE EmployeeTable DROP COLUMN Age;
RENAME TABLE EmployeeTable TO StaffTable;

四、DML(Data Manipulation Language):數據操作語言

4.1 插入數據:利用INSERT INTO語句添加一條或多條記錄。

INSERT INTO employees (id, name, department_id) VALUES (1, 'Li Ming', 101);    
(向employees表中插入一條新的員工記錄,id為1, 名字是'Li Ming', 部門id是101)
INSERT INTO employees (name, department_id) VALUES ('Wang Gang', 102);      
(向employees表中插入一條新的員工記錄, id將自動生成,名字是'Wang Gang', 部門id是102)
INSERT INTO employees VALUES (3, 'Zhang San', 103);            
(向employees表中插入一條新的員工記錄,id為3, 名字是'Zhang San', 部門id是103)

4.2 修改數據:用UPDATE語句可以修改表中的數據。

UPDATE employees SET department_id = 201 WHERE name = 'Li Ming';             
(修改名為'Li Ming'的員工的部門id為201)
UPDATE employees SET name = 'Liu Yan' WHERE id = 2;               
(修改id為2的員工的名字為'Liu Yan')
UPDATE employees SET name = 'Zhu Rongji', department_id = 202 WHERE id = 3;                  
(修改id為3的員工的名字為'Zhu Rongji'和部門id為202)

4.3 刪除數據:DELETE FROM語句用于在表中刪除一條或者多條記錄。

DELETE FROM employees WHERE id = 1;                
(刪除id為1的員工記錄)
DELETE FROM employees WHERE name = 'Wang Gang';                   
(刪除名字為'Wang Gang'的員工記錄)
DELETE FROM employees WHERE department_id = 202;                 
(刪除部門id為202的所有員工記錄)

五、DCL(Data Control Language):數據控制語言

5.1 創建用戶:使用CREATE USER語句創建新的數據庫用戶。

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
(在"localhost"上創建一個名為"newuser"的新用戶,密碼是"password"。)

5.2 給用戶授權:使用GRANT語句為用戶分配訪問權限。

GRANT SELECT, INSERT, DELETE ON database_name.table_name TO 'username'@'localhost';
(在localhost上給"username"用戶賦予運database_name數據庫中table_name表的SELECT,INSERT和DELETE權限。)

5.3 撤銷授權:使用REVOKE語句撤銷用戶的訪問權限。

REVOKE INSERT ON database_name.table_name FROM 'username'@'localhost';
(在localhost上撤銷"username"用戶對database_name數據庫中table_name表的INSERT權限。)

5.4 查看用戶權限:使用SHOW GRANTS語句查看用戶當前的權限列表。

SHOW GRANTS FOR 'username'@'localhost';
(顯示"localhost"上"username"用戶的所有權限。)

5.5 刪除用戶:用DROP USER語句來刪除一個用戶。

DROP USER 'username'@'localhost';
(刪除"localhost"上名為"username"的用戶。)

5.6 修改用戶密碼(以root身份):通過ALTER USER語句可以修改用戶的密碼。

ALTER USER 'username'@'localhost' IDENTIFIED BY 'newpassword';
(修改在"localhost"上username用戶的密碼為"newpassword"。)

六、DQL(Data Query Language):數據查詢語言

6.1 基礎查詢:利用SELECT 語句可以查詢數據庫中的數據。

SELECT * 
FROM Employee;  
(查詢Employees表中的所有記錄)
SELECT FirstName, LastName 
FROM Employee;  
(查詢Employee表中的FirstName和LastName字段所有記錄)

6.2 條件查詢:通過使用WHERE子句來設定查詢條件。

SELECT * 
FROM Employee 
WHERE Salary > 5000; 
(查詢Employee表中Salary大于5000的所有記錄)
SELECT FirstName, LastName 
FROM Employee 
WHERE Age <= 30; 
(查詢Employee表中年齡小于等于30的員工的firstName和lastName字段記錄)
SELECT * 
FROM Employee 
WHERE Salary > 5000 
AND Age <= 30; 
(查詢Employee表中Salary大于5000且年齡小于等于30的所有記錄)
SELECT * 
FROM Employee 
WHERE Salary > 5000 
OR Age <= 30; 
(查詢Employee表中Salary大于5000或年齡小于等于30的所有記錄)

6.3 模糊查詢:使用LIKE子句,配合通配符%和_進行模糊查詢。

SELECT * 
FROM Employee 
WHERE FirstName LIKE 'John%'; 
(查詢Employee表中FirstName以John開頭的所有記錄)
SELECT * 
FROM Employee 
WHERE FirstName LIKE '%John%'; 
(查詢Employee表中FirstName包含John的所有記錄)
SELECT FirstName, LastName 
FROM Employee 
WHERE LastName LIKE '%son_'; 
(查詢Employee表中LastName以son+一個任意字符結束的所有記錄)

6.4 字段控制查詢:運用DISTINCT關鍵字進行去重查詢。

SELECT DISTINCT City 
FROM Employee; 
(查詢Employee表中,City字段去重之后的所有城市記錄)
SELECT DISTINCT Age, Salary 
FROM Employee 
WHERE Age<50; 
(查詢Employee表中,Age小于50歲的員工的Age和Salary字段組合記錄,并進行去重處理)

6.5 排序:用ORDER BY子句按照一個或多個列進行排序。

單列排序:

SELECT * 
FROM Employee 
ORDER BY Salary; 
(按'工資'列的升序返回Employee表中的所有行。)

多列排序:

SELECT * 
FROM Employee 
ORDER BY Salary, Age DESC;
(首先根據'工資'列的升序對Employee表中的行進行排序,然后在工資相同的情況下,根據'Age'列的降序進行排序。)

6.6 聚合函數:包括COUNT,SUM,MAX,MIN,AVG等函數。

COUNT:

SELECT COUNT(*) 
FROM Employee;
(返回Employee表的總行數。)

SUM:

SELECT SUM(Salary) 
FROM Employee;
(返回Employee表中所有員工的薪水總和。)

MAX:

SELECT MAX(Age)` `FROM Employee;``(返回Employee表中員工的最大年齡。)

MIN:

SELECT MIN(Age)` `FROM Employee;``(返回Employee表中員工的最小年齡。)

AVG:

SELECT AVG(Salary)` `FROM Employee;``(返回Employee表中員工的平均薪水。)

6.7 分組查詢:GROUP BY子句是用于結合聚合函數,依據一個或多個列進行分組。

按單列分組:

SELECT Department, COUNT(*)` `FROM Employee` `GROUP BY Department;``(返回每個部門的員工數量。)

按多列分組:

SELECT Department, JobTitle, AVG(Salary)` `FROM Employee` `GROUP BY Department, JobTitle;``(返回每個部門及職位下員工的平均薪水。)

分組后過濾:

SELECT Department, JobTitle, AVG(Salary)` `FROM Employee` `GROUP BY Department, JobTitle``HAVING AVG(Salary) > 5000;``(返回每個部門及職位下員工的平均薪水大于5000的部分。)

6.8 LIMIT:用來限定查詢結果的起始行,以及總行數。

簡單LIMIT:

SELECT *` `FROM Employee` `ORDER BY Salary DESC` `LIMIT 10;``(返回前10個工資最高的員工。)

帶偏移量的LIMIT:

SELECT *` `FROM Employee` `ORDER BY Salary DESC` `LIMIT 10 OFFSET 5;``(返回工資排名第6到第15的10個員工。)

6.9 多表連接查詢:

內連接:INNER JOIN

SELECT Orders.OrderID, Customers.CustomerName``FROM Orders``INNER JOIN Customers``ON Orders.CustomerID = Customers.CustomerID;

左連接:LEFT JOIN

SELECT Customers.CustomerName, Orders.OrderID``FROM Customers``LEFT JOIN Orders``ON Customers.CustomerID = Orders.CustomerID;

右連接:RIGHT JOIN

SELECT Orders.OrderID, Customers.CustomerName``FROM Orders``RIGHT JOIN Customers``ON Orders.CustomerID = Customers.CustomerID;

全外連接:FULL JOIN

SELECT Customers.CustomerName, Orders.OrderID``FROM Customers``FULL JOIN Orders``ON Customers.CustomerID = Orders.CustomerID;

笛卡爾積:CROSS JOIN

SELECT Products.ProductName, Suppliers.SupplierName``FROM Products``CROSS JOIN Suppliers;
Tags:SQL,基礎入門,數據庫  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊。 昵稱:注冊  登錄
[ 查看全部 ] 網友評論
關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
欧美午夜欧美,台湾成人av,久久av一区,最近看过的日韩成人
欧美日韩成人综合在线一区二区| 日韩中文字幕亚洲一区二区va在线| 欧美一区二区三区免费| 欧美在线观看一二区| 欧美亚洲尤物久久| 欧美亚洲一区二区在线观看| 欧美午夜寂寞影院| 精品视频一区三区九区| 欧美肥妇bbw| 日韩欧美高清dvd碟片| 久久免费电影网| 中文字幕一区二区三区在线不卡| 欧美激情综合五月色丁香| 成人免费在线视频观看| 亚洲精品一二三区| 日本伊人色综合网| 国产精品18久久久久久久久| av激情成人网| 欧美美女直播网站| 国产视频亚洲色图| 一区二区三区中文在线| 日本 国产 欧美色综合| 国产精品一区二区无线| 91成人网在线| 2021中文字幕一区亚洲| 亚洲免费视频成人| 另类小说图片综合网| 成人免费毛片app| 欧美日韩国产综合一区二区三区| 日韩一级视频免费观看在线| 国产精品日日摸夜夜摸av| 亚洲一区二区三区国产| 成人午夜在线播放| 欧美午夜一区二区三区免费大片| 日韩欧美电影一区| 亚洲精品你懂的| 国产一区高清在线| 欧美午夜精品理论片a级按摩| 精品91自产拍在线观看一区| 亚洲色图欧美偷拍| 国产一区二区主播在线| 欧美四级电影在线观看| 国产亚洲综合在线| 麻豆91小视频| 欧美中文字幕不卡| 国产精品视频线看| 久久国产精品免费| 91麻豆精品国产无毒不卡在线观看 | 国产91丝袜在线观看| 欧美日韩国产bt| 国产精品二区一区二区aⅴ污介绍| 美女脱光内衣内裤视频久久网站| 色婷婷综合五月| 国产精品麻豆久久久| 国内偷窥港台综合视频在线播放| 欧美日韩国产区一| 亚洲一区二区三区影院| av午夜精品一区二区三区| 国产日本亚洲高清| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 在线不卡的av| 一区二区三区在线免费视频| 北条麻妃国产九九精品视频| 2021久久国产精品不只是精品| 日韩av不卡在线观看| 678五月天丁香亚洲综合网| 一区二区三区.www| 欧美影院午夜播放| 一区二区在线看| 91同城在线观看| 成人欧美一区二区三区白人| 不卡高清视频专区| 18成人在线视频| 日本高清成人免费播放| 综合久久给合久久狠狠狠97色| 国产成人在线观看| 中文字幕欧美一| 色94色欧美sute亚洲线路一久| 亚洲欧美日韩一区二区三区在线观看| 成人白浆超碰人人人人| 亚洲欧美日韩中文字幕一区二区三区| 色综合av在线| 亚洲高清中文字幕| 欧美精品一区二区蜜臀亚洲| 国产真实精品久久二三区| 欧美激情综合网| 91亚洲大成网污www| 亚洲成人在线观看视频| 欧美大片一区二区三区| 国产69精品久久777的优势| 中文字幕日本乱码精品影院| 欧美综合欧美视频| 免费国产亚洲视频| 国产欧美精品一区aⅴ影院 | 成人一区二区三区视频在线观看| 国产日产欧美精品一区二区三区| www.色综合.com| 亚洲高清在线精品| 精品国产麻豆免费人成网站| 成人av在线播放网址| 亚洲一二三区不卡| 国产日韩亚洲欧美综合| 色婷婷亚洲精品| 黄页网站大全一区二区| 最新国产の精品合集bt伙计| 91精品免费在线| 成人免费毛片aaaaa**| 亚洲高清免费视频| 国产日产欧美一区二区视频| 欧美日韩国产高清一区二区三区| 国内精品视频666| 亚洲国产成人精品视频| 国产免费成人在线视频| 欧美久久久久中文字幕| av动漫一区二区| 久久99国产精品久久| 亚洲自拍欧美精品| 国产精品国产a级| 欧美成人午夜电影| 欧美中文字幕一区二区三区| 成人激情动漫在线观看| 久久精品国产色蜜蜜麻豆| 一区二区三区四区蜜桃 | 欧美精品tushy高清| 成人app软件下载大全免费| 麻豆精品久久久| 亚洲第一电影网| 亚洲欧美日韩小说| 久久精品日韩一区二区三区| 欧美一区二区三区色| 欧美亚洲综合在线| 色综合久久中文综合久久牛| 国产精品亚洲一区二区三区在线| 日韩精品一区第一页| 亚洲永久精品国产| 中文字幕av资源一区| 久久久五月婷婷| 久久久蜜桃精品| 久久这里只有精品6| 日韩三级电影网址| 欧美一卡二卡在线| 日韩一区二区视频在线观看| 欧美一区二区视频在线观看| 欧美午夜在线观看| 欧美精品日韩精品| 日韩欧美一区电影| 欧美一级精品大片| 精品美女被调教视频大全网站| 日韩欧美中文一区二区| 日韩免费看的电影| 久久综合资源网| 国产欧美一区二区在线观看| 久久久精品中文字幕麻豆发布| 久久久91精品国产一区二区精品| 国产日韩亚洲欧美综合| 中文字幕国产精品一区二区| 国产精品污污网站在线观看| 成人免费小视频| 一级日本不卡的影视| 日韩黄色片在线观看| 久久成人免费网站| 成人免费观看视频| 日本丶国产丶欧美色综合| 欧美精品自拍偷拍| 久久久蜜臀国产一区二区| 国产精品久久久久久久久动漫| 亚洲欧美日韩中文播放| 香蕉久久夜色精品国产使用方法| 青娱乐精品在线视频| 韩国毛片一区二区三区| www.欧美.com| 欧美精品在欧美一区二区少妇 | 成人午夜视频福利| 欧美在线观看18| 亚洲欧洲精品一区二区精品久久久| 一区二区视频在线| 久久av中文字幕片| 色综合 综合色| 日韩美女一区二区三区四区| 欧美高清一级片在线观看| 亚洲第一福利视频在线| 国产超碰在线一区| 欧美三级欧美一级| 国产精品美女久久久久aⅴ| 香港成人在线视频| 成人激情图片网| 91精品国产品国语在线不卡| 中文字幕的久久| 六月丁香婷婷色狠狠久久| 99精品视频一区二区三区| 日韩欧美国产一区二区三区| 一区二区三区四区乱视频| 国产剧情一区二区三区| 欧美日韩色一区| 亚洲美女淫视频| 风间由美性色一区二区三区| 日韩欧美在线网站| 香蕉久久夜色精品国产使用方法| 99国产精品国产精品毛片| 欧美精品一区二区三区蜜臀|