MySQL 必知必會學習入門

數據庫入門

數據庫: 保存有組織的數據的容器(通常是一個文件或一組文件).數據庫軟件應該稱為 DBMS(DataBase Manage System) 數據庫管理系統,數據庫是指通過 DBMS 創建和操縱的容器,數據庫可以是保存在硬盤上的文件,但也可以不是。你不能直接訪問數據庫,而是使用 DBMS 來訪問,他替你訪問數據庫。

表: 某種特定類型數據的結構化清單。存儲在表中的數據是一種類型的數據或一個清單,數據庫中的每個表都有一個名字,用來標識自己,此名字是唯一的,這表示數據庫中沒有其他表具有相同的名字。

表具有一些特性,這些特定定義了數據在表中如何存儲,如存儲什么樣的數據,數據如何分解,個部分信息如何命名等等,描述這組信息就是所謂的模式
模式: 關于數據庫和表的布局及特性的信息.

列:表中的一個字段,所有的表都是由一個或多個列組成的。
數據類型: 所容許的數據的類型,每個表都有相對應的數據類型,他限制(容許)該列中存儲的數據。數據類型限制可存儲在列中的數據種類,數據類型還幫助正確的排序數據,并在優化磁盤使用方面起重要的作用,因此,在創建表時必須對數據類型給予特別的關注

行:表中的一個記錄,
主鍵:一列(或一組列),其值能夠唯一區分表中的每個行。唯一標識表中每行的這個列稱為主鍵,主鍵用來表示一個特定的行,沒有主鍵,更新或刪除表中特定行很困難,因為沒有安全的方法保證只涉及相關的行。表中的任何列都可以作為主鍵,只要它滿足以下條件:

  • 任何兩行都不具有相同的主鍵值
  • 每個行都必須具有一個主鍵值(主鍵值不允許 NULL 值)。

SQL: 結構化查詢語言(Structured Query Language),是一種專門用來與數據庫通信的語言。

基礎操作

了解數據庫和表(SHOW)

  1. SHOW DATABASES: 返回一個數據庫列表,包含在這個列表中的可能是 MYSQL 內部使用的數據庫.
  2. SHOW TABLES: 返回當前選擇的數據庫內可用表的列表
  3. SHOW COLUMS FROM customers: 要求給出一個表名,對每個字段返回一行。包含 該字段的信息。

創建和操縱表

創建表

MySQL 不僅用于表數據操作,而且還可以用來執行數據庫和表的所有操作,包括表本身的創建和處理。

創建表的方法:
- 使用具有交互式創建和管理表的工具
- 使用 MySQL 語句操縱

  1. 表創建基礎(CREATE TABLE)
    • 新的表明名再關鍵字 CREATE TABLE 之后給出
    • 表列的名字和定義,用逗號分隔
  2. 使用 NULL 值: Null 值就是沒有值或者缺值,允許 NULL 值的列也允許再插入行時不給出該列的值,不允許 NULL 值的列不接受該列沒有值的行,換句話說,在插入或更新行時該列必須有值。NULL 為默認值,如果不指定 NOT NULL, 則認為指定的是 NULL, NULL 值就是沒有值,他不是空串,空串是一個有效的值。
  3. 主鍵: 主鍵的值必須唯一,即,表中的每個行必須具有唯一的主鍵值,如果主鍵使用單個列,則他的值必須唯一,如果使用多個列,則這些列的組合值必須唯一。
  4. 使用 AUTO_INCREMENT: 告訴 MySQL ,本列每當增加一行時自動增量,每次執行一個 INSERT 操作時, MySQL 會對該列增量,每個表只允許一個 AUTO_INCREMENT列,而且他必須被索引

更改表(ALTER TABLE)

  1. 增加列: ALTER TABLE vendors ADD vend_phone CHAR(20)
  2. 刪除列: ALTER TABLE vendors DROP COLUMN vend_phone

刪除表 (DROP TABLE)

重命名表 (RENAME TABLE)

插入數據

使用 INSERT 語句將數據插入表中, INSERT是用來插入(或添加)行到數據庫表的,插入可以用集中方式使用

  1. 插入完整行,使用 INSERT ,要求指定表明和被插入到新行的值,最好是寫上列名,這樣可以保證列明是正確的。
  2. 插入多個行: INSERT 可以插入一行到一個表中,如果想一次性插入多行的話,就需要使用多個 INSERT 或者使用單條 INSERT 語句有多組值,每組值用一對圓括號括起來

更新和刪除數據

更新數據

為了更新(修改)表中的數據,可使用 UPDATE 語句,可采用兩種方式使用 UPDATE:
使用 UPDATE 的時候一定要注意,不要省略 WHERE 子句,使用 UPDATE 語句總是以要更新的表的名字開始.要以 WHERE 子句(用來告訴 MySQL 更新哪一行)結束。在更新多個列時,只需要使用單個 SET 命令,每個 列=值對之間用逗號分隔(最后一列之后不用逗號);

  • 更新表中特定行
  • 更新表中所有行

刪除數據

為了從一個表中刪除(去掉)數據,使用 DELETE 語句,可依兩種方式使用 DELETE

  • 從表中刪除特定的行 DELETE FROM products WHERE cust_id = 1006

更新和刪除的指導原則

如果執行 UPDATE 而不帶 WHERE 子句,則表中每行都將應用新值更新,類似的,如果執行 DELETE 語句而不帶 WHERE 子句,表的所有數據都將被刪除。

  • 除非缺失打算更新和刪除每一行,否則絕對不要使用不帶 WHERE子句的 UPDATEDELETE語句
  • 保證每個表都有主鍵,盡可能像 WHERE子句那樣使用它
  • 在對 UPDATE 或 DELETE 語句使用 WHERE 子句前,最好先用 SELECT 進行測試,保證它過濾的是正確的記錄,以防止編寫的 WHERE 子句不正確
  • 使用強制實施引用完整性的數據庫,這樣 MySQL 將不允許刪除具有與其他表相關聯的數據的行。

檢索數據(SELECT)

從一個或多個表中檢索信息,為了使用 SELECT 檢索數據,必須至少給出兩條數據 -- 項選擇什么,以及從什么地方選擇。

  1. 檢索單個列: SELECT prod_name FROM products

  2. 檢索多個列: SELECT prod_id,prof_name FROM product

  3. 檢索所有列: SELECT * FROM product

  4. 檢索不同的行: SELECT DISTINCT vend_id FROM products, DISTINCT 關鍵字必須直接方法在列名的前面

  5. 限制結果: LIMIT :

    • SELECT prod_name FROM products LIMIT 5
    • SELECT prod_name FROM products LIMIT 5,5
  6. 使用完全限定的表名: SELECT products.prod_name FROM crashcourse.products;

排序檢索數據

將會講授如何使用 SELECT 語句的 ORDER_BY 子句,根據需要排序檢索出的數據.

子句(clause): SQL 語句由子句構成,有些子句是必需的,而有的是可選的,一個子句通常由一個關鍵字和所提供的數據組組成,子句的例子有 SELECT 語句的 FROM 子句。
  1. 單列排序: SELECT prod_name FROM products ORDER BY prod_id
  2. 多列排序: SELECT prod_name FROM products ORDER BY prod_price,prod_name, 排序完全按照所規定的順序進行,也就是說僅在多行具有相同的 price 的時候才會根據 name 進行排序
  3. 指定排序方向: 數據排序不限于升序順序(A-Z),還可以使用 ORDER BY 子句以降序(Z-A)順序排序,為了進行降序排序,必須指定 DESC 關鍵字. SELECT prod_id, prod_price,prod_name FROM products ORDER BY prod_price DESC. DESC 關鍵字只能應用到直接位于其前面的列名。如果想要對多個列上進行降序排列,必須對每個列指定DESC關鍵字。

過濾數據

使用 SELECT 語句的 WHERE子句指定搜索條件,只檢索所需的數據需要指定搜索條件,搜索條件也稱為過濾條件,在SELECT語句中,數據根據 WHERE 子句中指定的搜索條件進行過濾。WHERE 子句在表名 (FROM子句) 之后給出。

  1. SELECT prod_name,prod_price FROM products WHERE prod_price=2.5;
    如果同時使用 ODRDER BY 子句和 WHERE 子句時,應該讓 ORDER BY 位于 WHERE 之后。

  2. WHERE 子句操作符

    • = 等于
    • <> 不等于
    • != 不等于
    • < 小于
    • <= 小于等于
    • > 大于
    • >= 大于等于
    • BETWEEN 在指定的兩個值之間
  3. 不匹檢查. SELECT prod_name, prod_price FROM product WHERE prod_location <> 'japan', 注意,單引號用來限定字符串,如果將值與串類型的列來進行比較,則需要限定引號,用來與數值列進行比較的值不用引號。

  4. 范圍值檢查: SELECT prod_name,prod_price FROM products WHERE prod_price BETWEEN 5 AND 10 ,BETWEEN 是閉合查詢,也就是意味著包含了起始和結束

  5. 空值檢查: 在創建表,表設計人員可以指定其中的列是否可以不包含值,在一個列不包含值時,稱其為包含空值 NULL, SELECT 語句有一個特殊的 WHERE 子句,可用來檢查具有 NULL值的列,這個 WHERE 子句就是 IS NULL 子句

數據過濾

組織 WHERE 子句建立功能更強的更高級的搜索條件,MYSQL 允許多個 WHERE 子句,這些子句可以以兩種方式使用: 以 AND 子句的方式或者以 OR 子句的方式使用。操作符用來鏈接或者改變 WHERE 子句中的子句的關鍵字,也稱為邏輯操作符

  1. AND操作符: SELECT prod_id,prod_price FROM products WHERE vend_id = 1003 AND prod_price <= 10;

  2. OR操作符: OR 操作符與 AND 操作符不同,它指示 MySQL 檢索匹配任意條件SELECT prod_id FROM products WHERE vend_id=1002 OR prod_price=1003

  3. 計算次序: SELECT prod_name FROM products WHERE (prod_id=1002 OR prod_id=1003) AND prod_price>10, AND 的計算次序要優先于 OR ,所以需要將 OR

  4. IN操作符: IN 操作符用來指定條件范圍,范圍內的每個條件都可以進行匹配, IN 取合法值的由逗號分隔的清單,全都括在圓括號中。SELECT prod_name FROM products WHERE vend_id IN (1002,1003) ORDER BY prod_name 其實 INOR 的功能相同。那么為什么要使用 IN 操作符呢?

    • 在使用長的合法選項清單時,IN 操作符的語法更清楚且更直觀
    • 在使用 IN 時,計算的次序更容易管理
    • IN 操作符一般比 OR 操作符清單執行更快
    • IN 的最大優點是可以包含其他 SELECT 語句,使得能夠更動態地建立 WHERE 子句
  5. NOT操作符:NOT 操作符用來否定它之后所跟的任何條件 SELECT prod_name FROM products WHERE vend_id NOT IN(1002,1003)

用通配符進行過濾

使用 LIKE 操作符來進行通配搜索,以便對數據進行復雜過濾

  1. LIKE 操作符:利用通配符可創建比較特定數據的搜索模式,來匹配值的一部分的特殊字符,搜索模式: 由字面值,通配符或兩者組合構成的搜索條件。為在搜索子句中使用通配符,必須使用 LIKE 操作符,LIKE 指示 MySQL,后跟的搜索模式利用通配符匹配而不是直接相等匹配進行比較。

    • 百分號(%)通配符:表示任何字符出現的任意次數 SELECT prod_id,prod_name FROM products WHERE prod_name LIKE ‘jet%’
    • 下劃線_通配符:另一個有用的通配符是下劃線 _,下劃線只匹配單個字符串而不是多個字符串。SELECT prod_id FROM products WHERE prod_name LIKE '_ton anvil';
    • 使用通配符的技巧:
      • 不要過渡使用通配符
      • 在確實需要的時候再使用通配符

用正則表達式來進行搜索

帶學

創建計算字段

filed 可以與列的意思相同,經?;Q使用,不過數據庫的列稱為一般列,而術語通常用在計算字段的連接上.

  1. 拼接字段: concatenate:將值連接到一起構成單個值,解決辦法是把兩個列拼接起來,在 MySQL 的 SELECT 語句中,可使用 Concat() 函數來拼接兩個列。Concat() 拼接串,即把多個串連接起來形成一個較長的串,需要一個或多個指定的串,各個串之間用逗號分隔。
  2. 使用別名 SELECT Concat(...) AS newName FROM products
  3. 執行算數計算: 計算字段的另一個常見用途是對檢索出的數據進行算術計算,

使用數據處理函數

MySQL 支持利用函數來處理數據,函數一般是在數據上執行的,它給數據的轉換和處理提供了方便。函數沒有 SQL 的可移植性強,多數的 SQL 語句是可移植的,在 SQL 實現之間有差異時,這些差異通常不那么難處理,而函數的可移植性卻不強,

使用函數

大多數 SQL 實現支持以下類型的函數:

  • 用于處理文本串(刪除或填充值,轉換值為大寫或小寫的文本函數)
  • 用于在數值數據上進行算術操作(如絕對值,進行代數運算)的數值函數
  • 用于處理日期和時間值,并且從這些址中提取特定成分
  • 返回 DBMS 正使用的特殊信心(如返回用戶登陸信息,檢查版本細節)的系統函數

文本處理函數

  • RTrim()函數來去除列值右邊的空格。
  • Upper()函數,將文本轉換為大寫。
  • Left() 函數,返回串左邊的字符。

時期和時間處理函數

時間和日期采用相應的數據類型和特殊的格式存儲,以便能快速和有效排序或過濾,并且節省物理存儲空間,一般,應用程序不使用用來存儲日期和時間的格式,因此日期和時間函數被用來統計,讀取和處理這些值。

  • AddDate() 增加一個日期(天,周等)。
  • AddTime() 增加一個時間(時,分等)。等,,,,。

數值處理函數

數值處理函數僅處理數值數據,這些函數一般主要用于代數,三角或幾何運算.

  • Abs(). 返回一個數的絕對值
  • Cos()返回一個角度的余弦
  • ...

匯總數據

MySQL 查詢可用于檢索數據,以便分析和報表生成,這種類型的檢索例子有以下幾種:

  • 確定表中行數(或者滿足某個條件或包含某個特定值的行數)
  • 獲得表中行組的和
  • 找出表列(或所有行或某些特定的行)的最大值,最小值和平均值
    這些例子都需要對表中數據匯總。為了檢索上述的類型, MySQL 給出了5個聚集函數。聚集函數運行在行組上,計算和返回單個值的函數。

AVG() 函數

AVG() 通過對表中行數計數并計算特定列值之和,求得該列的平均值,AVG()可用來返回所有列的平均值,也可以用來返回特定列或行的平均值。SELECT AVG(price) AS price_avg FROM products;

COUNT() 函數

COUNT() 函數進行計數,可利用 COUNT() 確定表中行的數目或符合特定條件的行的數目。COUNT()函數有兩種使用方式

  1. 使用 COUNT(*) 對表中行的數目進行計數,不管表列中包含的是空值(NULL)還是非空值。
  2. 使用 COUNT(column) 對特定列中具有值的行進行計數,忽略 NULL 值。

MAX() 函數

MAX() 返回指定列中的最大值,MAX()要求指定列名,

MIN() 函數

MIN() 的功能正好與 MAX() 功能相反,他返回指定列的最小值,與 MAX() 一樣,必須指定列名

SUM() 函數

SUM() 函數用來返回指定列值的和(總計),SUM()也可以用來合計計算值

分組數據

使用分組來匯總表內容的子集,使用 SELECT的子句 GROUP BYHAVING 子句。

創建分組

分組是在 SELECT 語句的 GROUP BY 子句中建立的。

SELECT country, COUNT(*) AS num_prod FROM products GROUP BY country;

使用了 GROUP BY子句時,需要知道一些重要的規定。

  • GROUP BY 子句可以包含任意數目的列,這使得能對分組進行嵌套,為數據分組提供更細致的控制。

過濾分組

除了能使用 GROUP BY 分組數據外,MySQL 還允許過濾數組,規定包含哪些分組,排除哪些分組。使用 HAVING 過濾分組

SELECT price, COUNT(*) AS price_larger FROM products GROUP BY price HAVING price LIKE '6_000';

SELECT子句順序:

  • SELECT 要返回的列或表達式
  • FROM 從中檢索數據的表
  • WHERE 行級過濾
  • GROUP BY 分組說明
  • HAVING 組級過濾
  • ORDER BY 輸出排序順序
  • LIMIT 限制檢索的行數

使用子查詢

SQL 允許創建子查詢,即嵌套在其他查詢中的查詢

SELECT 語句中,子查詢總是從內向外處理,在處理上面的 SELECT 語句時, MySQL 實際上執行了兩個操作

SELECT order_num FROM orderitems WHERE prod_id = 1;
SELECT cust_id FROM orders WHERE order_num = 1;
SELECT * FROM customers WHERE cust_id = 1;

SELECT * FROM customers WHERE cust_id IN (
  SELECT cust_id
  FROM orders
  WHERE order_num IN (
    SELECT order_num
    FROM orderitems
    WHERE prod_id = 1
  )
);

雖然子查詢一般與 IN 操作符結合使用,但也可以用于測試等于(=),不等于(<>) 等。

作為計算字段使用子查詢

使用子查詢的另一方法是創建字段。

SELECT cust_name, cust_state,(SELECT COUNT(*) FROM orders WHERE cust_id = customers.cust_id) AS orders FROM customers;

聯結表

SQL 最強大功能之一就是能在數據檢索查詢的執行中聯結(join)表,聯結是利用 SQL 的 SELECT 能執行的最重要的操作,很好地理解聯結及其語法是學習 SQL 的一個極為重要的組成部分。

關系表

關系表的設計就是要保證把信息分解成多個表,一類數據一個表,各表通過某些常用的值(即關系設計中的關系)互相關聯。

外鍵:外鍵為某個表中的一列,他包含另一個表的主鍵值,從而定義了兩個表之間的關系。
可伸縮性:能夠適應不斷增加的工作量而不失敗,

為什么要使用聯結

分解數據為多個表中,更方便地處理,并且具有更大的可伸縮性。

使用聯結,可以用單條 SELECT 語句檢索出數據,聯結是一種機制,用來在一條 SELECT 語句中關聯表,因此稱之為聯結,

SELECT vend_name,prod_name,prod_id,prod_price FROM vendors,products WHERE vendors.vend_id = products.vend_id;

WHERE 子句的重要性

請記住:在一條 SELECT 語句中聯結幾個表時,相應的關系是在運行中構造的,在數據表的定義中不存在能指示 MySQL 如何對表進行聯結的東西,你必須自己做這件事情,

笛卡爾積 由沒有聯結條件的表關系返回的結果為笛卡爾積,檢索出的行的數目將是第一個表中的行數乘以第二個表中的行數。

內部聯結

目前為止所用的聯結稱為等值聯結,他基于兩個表之間的相等測試,這種聯結也稱為內部聯結,其實,對于這種聯結可以使用稍微不同的語法來明確指定聯結的類型,

聯結多個表

SQL 對一條 SELECT 語句中可以聯結的表的數目沒有限制,創建聯結的基本規則也相同,首先列出所有表,然后定義表之間的關系。

創建高級聯結

組合查詢

多數 SQL 查詢都只包含一個或多個表中返回數據的單條 SELECT 語句,MySQL 也允許執行多個查詢(多條查詢),并將結果作為單個查詢結果集返回,這些組合查詢通暢稱為并 (union) 或復合查詢(compound query).
有兩種基本情況,其中需要使用組合查詢:

  • 再單個查詢中從不同的表返回類似結構的數據
  • 對單個表執行多個查詢,按單個查詢返回數據

創建組合查詢

可用 UNION 操作符來組合數條 SQL 查詢,利用 UNION, 可給出多條 SELECT 語句,將它們的結果組合成單個結果集。

使用 UNION : 用法,給出每條 SELECT 語句,在各條 語句之間放上關鍵字 UNION
UNION 規則: UNION 必須由兩條或兩條以上的 SELECT語句組成,語句之間用關鍵字 UNION 分隔,UNION 中的每個查詢必須包含相同的列,表達式或聚集函數。
包含或取消重復的行: UNION 查詢時回自動去除重復的行,如果想要返回所有的匹配行,可使用 UNION ALL 而不是 UNION.
對組合查詢結果排序: SELECT 語句的輸出用 ORDER BY子句排序,在用 UNION組合查詢時,只能使用一條 ORDER BY 子句,他必須出現在最后一條 SELECT 語句之后,對于結果集,不存在用一種方式排序一部分,用另一種反式排序另一部分。

全文本搜索

為了進行全文本搜索,必須索引被搜索的列,而且隨著數據的改變不斷的被重新索引,在對表列進行適當設計后,MySQL 會自動進行所有的索引和重新索引。在索引之后,SELECT 與 Match() 和 Against() 一起使用以時機執行搜索。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,572評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,071評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事?!?“怎么了?”我有些...
    開封第一講書人閱讀 175,409評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,569評論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,360評論 6 404
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,895評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 42,979評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,123評論 0 286
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,643評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,559評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,742評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,250評論 5 356
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 43,981評論 3 346
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,363評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,622評論 1 280
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,354評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,707評論 2 370

推薦閱讀更多精彩內容

  • 前言 一、基礎知識1.了解數據庫數據庫(database):保存有組織的數據的容器表(table):某種特定類型數...
    流水混帳閱讀 515評論 0 1
  • 1.表中的任何列都可以作為主鍵, 只要它滿足以下條件:任意兩行都不具有相同的主鍵值;每一行都必須具有一個主鍵值( ...
    Cherryjs閱讀 678評論 0 0
  • 第四章 檢索數據 4.1 SELECT語句 SELECT語句的用途是從一個或多個表中檢索信息。為了使用SELECT...
    saviochen閱讀 576評論 0 4
  • 有些事,是從內心里就會抵制的。因為我在思考那些無關緊要的事和人存在的意義。若非利益和獵奇心驅使,何以激起喧囂之塵!
    這昵稱好帥嘞閱讀 194評論 0 0
  • 人與人之間的感情是怎么慢慢淡下來的呢?首先,我們是陌生人,然后相遇,相識,到慢慢熟悉,再到無話不談,然而每個人的人...
    小麥0304閱讀 569評論 1 0