mysql數(shù)據(jù)庫基礎知識點與操作小結
本文實例講述了mysql數(shù)據(jù)庫基礎知識點與操作。分享給大家供大家參考,具體如下:
數(shù)據(jù)庫
一、 修改數(shù)據(jù)表
添加一列:
ALTERTABLE tab_name ADD col_name column_defi[FIRST|AFTER col_name];
可以指定新列的位置關系,位于最開頭(FIRST)或者位于某列之后(AFTER…),否則新列默認位于最后。
添加多列:
ALTERTABLE tab_name ADD(col_name1 column_defi1,col_name2 column_defi2...);
刪除一列:
ALTERTABLE tab_name DROP col_name;
刪除多列或者刪除之后再新增一列,只需在drop col_name之后加逗號,再寫drop/add。
添加約束:
ALTERTABLE tab_name ADD PRIMARY KEY (index_column);
其中primary key可以替換為其他約束UNIQUE、FOREIGN KEY,默認約束為SET DEFAULT。
刪除約束:
ALTERTABLE tab_name DROP {INDEX|KEY} index_name
刪除外鍵:
ALTERTABLE tab_name DROP FOREIGN KEY fkey_name
其中外鍵約束名fkey_name可以通過show create table tab_name;查看constraint項得到,例如
CONSTRAINT `users_ibfk_1` FOREIGN KEY (`pid`) REFERENCES
修改列定義:
ALTERTABLE tab_name MODIFY col_name col_defi;
修改列名稱:
ALTERTABLE tab_name CHANGE old_colname new_name col_defi;
修改數(shù)據(jù)表名稱:
RENAMETABLE old_name TO new_name;
二、 數(shù)據(jù)表操作
插入記錄:
INSERT tab_name[(col_name)] VALUES (val1,val2...)
其中列名可選,如果不設置列名,默認為對每一列都插入。第二種插入方法:INSERT tab_name SET col_name=val...第三種方法:insert tab_name select…,將查詢結果插入數(shù)據(jù)表。
更新記錄:
UPDATE tab_name SET col_name=val [WHERE condition];
where條件如果不填,默認對所有記錄進行更新。
刪除記錄:
DELETE FROM tab_name [WHERE condition];
刪除滿足條件的記錄,如不填where,全刪。
查詢記錄:
SELECT col_name1,col_name2... /*選擇需要查詢的列名*/ FROM tab_name/*選擇需要查詢的數(shù)據(jù)表*/ WHERE condition/*查詢條件*/ GROUP BY col_name [ASC|DESC]/*查詢結果分組*/ HAVING condition/*對查詢分組經(jīng)行篩選*/ ORDER BY col_name[asc|desc]/*對查詢結果經(jīng)行排序*/ LIMIT [n1,]n2/*返回從n1開始的n2條結果,不填n1默認從開頭返回*/
三、 子查詢
父查詢與子查詢的連接由比較符號連接,子查詢返回多個結果時還可以由ANY、ALL對結果進行修飾。
多表更新:參照另外一個表來更新本表。
內連接:INNERJOIN ON join_condition,返回左右兩表中滿足條件的項。
左外連接:LEFTJOIN ON join_condition,返回左表全部與右表中滿足條件的項。
左外連接: RIGHT JOIN ON join_condition,返回右表全部與左表中滿足條件的項。
四、 數(shù)據(jù)庫函數(shù)
|
CONCAT('a','b'…) |
連接a,b多個字符串 |
|
CONCAT_WS('s','a','b'…) |
以s為連接符連接多個字符串 |
|
FORMAT(f,n) |
以n位小數(shù)顯示數(shù)字f |
|
LOWER()/UPPER() |
將內容轉換為小/大寫 |
|
LEFT/RIGHT(‘s',n) |
獲取字符串左邊/右邊前n個字符 |
|
LENGTH() |
獲取字符串長度 |
|
LTRIM/RTRIM/TRIM() |
去除字符串左邊/右邊/兩邊空格 |
|
REPLACE(‘s','a','b') |
將字符串s中的a字符替換為b |
|
SUBSTRING('s',n,e) |
截取字符串從第n位開始的e個字符 |
|
IS NULL |
判空 |
|
n IN(a,b,c…) |
判斷n是否在列出的值中 |
|
n BETWEEN a AND b |
判斷n是否在a到b之間 |
更多關于MySQL相關內容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL常用函數(shù)大匯總》、《MySQL日志操作技巧大全》、《MySQL事務操作技巧匯總》、《MySQL存儲過程技巧大全》及《MySQL數(shù)據(jù)庫鎖相關技巧匯總》
希望本文所述對大家MySQL數(shù)據(jù)庫計有所幫助。
- php基礎之連接mysql數(shù)據(jù)庫和查詢數(shù)據(jù)
- PHP連接和操作MySQL數(shù)據(jù)庫基礎教程
- Mysql入門基礎 數(shù)據(jù)庫創(chuàng)建篇
- PHP5 操作MySQL數(shù)據(jù)庫基礎代碼
- mysql 8.0.15 安裝圖文教程及數(shù)據(jù)庫基礎
- MySQL數(shù)據(jù)庫基礎命令大全(收藏)
- 很全面的Mysql數(shù)據(jù)庫、數(shù)據(jù)庫表、數(shù)據(jù)基礎操作筆記(含代碼)
- mysql 數(shù)據(jù)庫基礎筆記
- python 專題九 Mysql數(shù)據(jù)庫編程基礎知識
- MySQL數(shù)據(jù)庫基礎入門之常用命令小結
- MySQL數(shù)據(jù)庫基礎篇之入門基礎命令小結
- MySql數(shù)據(jù)庫基礎知識點總結
相關文章
MYSQL查看時區(qū)并設置時區(qū)的實現(xiàn)示例
本文主要介紹了MYSQL查看時區(qū)并設置時區(qū)的實現(xiàn)示例,包括查看全局和會話時區(qū)設置,設置全局和會話時區(qū)為東八區(qū),具有一定的參考價值,感興趣的可以了解一下2025-03-03
Mysql逗號拼接字符串的關聯(lián)查詢以及統(tǒng)計問題
有時為了數(shù)據(jù)庫簡潔,存放數(shù)據(jù)的時候,某一字段采用逗號隔開的形式進行存儲,下面這篇文章主要給大家介紹了關于Mysql逗號拼接字符串的關聯(lián)查詢以及統(tǒng)計問題的相關資料,需要的朋友可以參考下2023-03-03
解決MySQL讀寫分離導致insert后select不到數(shù)據(jù)的問題
這篇文章主要介紹了解決MySQL讀寫分離導致insert后select不到數(shù)據(jù)的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12
MySQL性能優(yōu)化 出題業(yè)務SQL優(yōu)化
根據(jù)用戶的作答結果出練習卷,題目的優(yōu)先級為:未做過的題目>只做錯的題目>做錯又做對的題目>只做對的題目。2010-08-08

