日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

mysql www.school.com_MySQL 基础学习

發布時間:2023/11/27 生活经验 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql www.school.com_MySQL 基础学习 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、limit x,y 或 limit z? :選取從x開始的y條數據? 或? 選取最開始的 z條數據

select * from product limit 0,10

select * from product limit 10

2、like '%N%' : 模糊查詢 查找出含有 ‘N’ 的數據

select * from product where product_name like '%餅%'

3、in ('x','y') : 查詢指定字段為x或者y的數據

select * from product where warehouse in ('二院店','農夫店')

4、between 'x' and 'y' :查詢指定字段間于x,y之間的值 (這些值可以是數值、文本或者日期)

select * from storage where last_time between '1460937599' and '1460937601' /*在此范圍的*/

select * from storage where last_time not between '1460937599' and '1460937601' /*不在此范圍的*/

5、as : 組合查詢 設置別名

select s.bar_code as bar_code,s.warehouse,s.num as stock,s.last_time,p.supplier from storage as s,product as p where s.bar_code = p.bar_code

6、join :

INNER JOIN,JOIN: 如果表中有至少一個匹配,則返回行

LEFT JOIN: 即使右表中沒有匹配,也從左表返回所有的行

RIGHT JOIN: 即使左表中沒有匹配,也從右表返回所有的行

FULL JOIN: 只要其中一個表中存在匹配,就返回行

inner join:

select s.bar_code as bar_code,s.warehouse,s.num as stock,s.last_time,p.supplier from storage as s inner join product as p on (s.bar_code = p.bar_code)

left join:

select s.bar_code as bar_code,s.warehouse,s.num as stock,s.last_time,p.supplier from storage as s left join product as p on (s.bar_code = p.bar_code)

right join :

select s.bar_code as bar_code,s.warehouse,s.num as stock,s.last_time,p.supplier from storage as s right join product as p on (s.bar_code = p.bar_code)

full join : MySQL 不支持? 可以用 LEFT JOIN ?+ ? UNION ?+ ?RIGHT JOIN 來實現

select s.bar_code as bar_code,s.warehouse,s.num as stock,s.last_time,p.supplier from storage as s left join product as p on(s.bar_code =p.bar_code)union all

select s.bar_code as bar_code,s.warehouse,s.num as stock,s.last_time,p.supplier from storage as s right join product as p on(s.bar_code = p.bar_code)

7、union :?UNION 操作符用于合并兩個或多個 SELECT 語句的結果集。UNION 內部的 SELECT 語句必須擁有相同數量的列。列也必須擁有相似的數據類型。同時,每條 SELECT 語句中的列的順序必須相同。例子如 上面的full join

注釋:默認地,UNION 操作符選取不同的值。如果允許重復的值,請使用 UNION ALL。

8、select into : 用于創建備份表

select s.bar_code as bar_code,s.warehouse,s.num as stock,s.last_time,p.supplier into storage_product_backup from storage as s inner join product as p where s.bar_code = p.bar_code /*未測試*/

9、create database : 如果沒有則創建新的數據庫

create database if not exists database_name

10、create table : 如果沒有則創建新的表

create tableif not existsPersons

(

Id_Pint,

LastNamevarchar(255),

FirstNamevarchar(255),

Addressvarchar(255),

Cityvarchar(255)

)

SQL約束

NOT NULL

UNIQUE

PRIMARY KEY

FOREIGN KEY

CHECK

DEFAULT

NOT NULL :不為空

UNIQUE 和 PRIMARY KEY:UNIQUE 約束唯一標識數據庫表中的每條記錄。UNIQUE 和 PRIMARY KEY 約束均為列或列集合提供了唯一性的保證。PRIMARY KEY 擁有自動定義的 UNIQUE 約束。請注意,每個表可以有多個 UNIQUE 約束,但是每個表只能有一個 PRIMARY KEY 約束。

CREATE TABLEPersons

(

Id_Pint NOT NULL,

LastNamevarchar(255) NOT NULL,

FirstNamevarchar(255),

Addressvarchar(255),

Cityvarchar(255),UNIQUE(Id_P)

)

如果需要命名 UNIQUE 約束,以及為多個列定義 UNIQUE 約束,請使用下面的 SQL 語法:

ALTER TABLEPersonsADD CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)

對已存在的表添加約束 ADD UNIQUE

ALTER TABLEPersons

ADD UNIQUE (Id_P)

撤銷 UNIQUE 約束

ALTER TABLEPersonsDROP INDEX uc_PersonID

PRIMARY KEY : 主鍵 ?等價于 唯一 (UNIQUE) 且 非空 (NOT NULL)

FOREIGN KEY :外鍵 一張表的外鍵關聯另外一張表的主鍵。如果想要在MySQL中根據參照完整性來建立表并且希望在此基礎上保持良好的性能,最好選擇表結構為innoDB類型。

CHECK : 條件約束

DEFAULT : 默認值

11、Create Index :創建索引

CREATE INDEXPersonIndexON Person (LastName, FirstName)

Drop Index : 刪除索引

12、Alter Table :語句用于在已有的表中添加、修改或刪除列。

13、AUTO INCREMENT :每次插入新記錄時,自動地創建主鍵字段的值。 可以設置起始值(例:100)

CREATE TABLEPersons

(

P_Idint NOT NULLAUTO_INCREMENT=100,

LastNamevarchar(255) NOT NULL,

FirstNamevarchar(255),

Addressvarchar(255),

Cityvarchar(255),PRIMARY KEY(P_Id)

)

14、View : 視圖

/*創建視圖*/

CREATE VIEW view_name AS

SELECTcolumn_name(s)FROMtable_nameWHEREcondition/*更新視圖*/SQLCREATE OR REPLACE VIEWSyntaxCREATE OR REPLACE VIEW view_name AS

SELECTcolumn_name(s)FROMtable_nameWHEREcondition/*刪除視圖*/SQLDROP VIEWSyntaxDROP VIEW view_name

15、SQL 日期:date

下面的表格列出了 MySQL 中最重要的內建日期函數:

函數描述

返回當前的日期和時間

提取日期或日期/時間表達式的日期部分

返回日期/時間按的單獨部分

給日期添加指定的時間間隔

從日期減去指定的時間間隔

返回兩個日期之間的天數

用不同的格式顯示日期/時間

MySQL 使用下列數據類型在數據庫中存儲日期或日期/時間值:

DATE - 格式 YYYY-MM-DD

DATETIME - 格式: YYYY-MM-DD HH:MM:SS

TIMESTAMP - 格式: YYYY-MM-DD HH:MM:SS

YEAR - 格式 YYYY 或 YY

16、NULLS:IS NULL 和 IS NOT NULL 用于判斷數據表字段NULL值

SELECT LastName,FirstName,Address FROMPersonsWHERE Address IS (NOT) NULL

17、IFNULL()? COALESCE(): 判斷NULL并取值 如果是NULL則取指定值

/*我們可以使用 IFNULL() 函數,就像這樣:*/

SELECT ProductName,UnitPrice*(UnitsInStock+IFNULL(UnitsOnOrder,0))FROMProducts/*或者我們可以使用 COALESCE() 函數,就像這樣:*/

SELECT ProductName,UnitPrice*(UnitsInStock+COALESCE(UnitsOnOrder,0))FROM Products

18、MYSQL 數據類型

在 MySQL 中,有三種主要的類型:文本、數字和日期/時間類型。

Text 類型:

數據類型描述

CHAR(size)

保存固定長度的字符串(可包含字母、數字以及特殊字符)。在括號中指定字符串的長度。最多 255 個字符。

VARCHAR(size)

保存可變長度的字符串(可包含字母、數字以及特殊字符)。在括號中指定字符串的最大長度。最多 255 個字符。

注釋:如果值的長度大于 255,則被轉換為 TEXT 類型。

TINYTEXT

存放最大長度為 255 個字符的字符串。

TEXT

存放最大長度為 65,535 個字符的字符串。

BLOB

用于 BLOBs (Binary Large OBjects)。存放最多 65,535 字節的數據。

MEDIUMTEXT

存放最大長度為 16,777,215 個字符的字符串。

MEDIUMBLOB

用于 BLOBs (Binary Large OBjects)。存放最多 16,777,215 字節的數據。

LONGTEXT

存放最大長度為 4,294,967,295 個字符的字符串。

LONGBLOB

用于 BLOBs (Binary Large OBjects)。存放最多 4,294,967,295 字節的數據。

ENUM(x,y,z,etc.)

允許你輸入可能值的列表。可以在 ENUM 列表中列出最大 65535 個值。如果列表中不存在插入的值,則插入空值。

注釋:這些值是按照你輸入的順序存儲的。

可以按照此格式輸入可能的值:ENUM('X','Y','Z')

SET

與 ENUM 類似,SET 最多只能包含 64 個列表項,不過 SET 可存儲一個以上的值。

Number 類型:

數據類型描述

TINYINT(size)

-128 到 127 常規。0 到 255 無符號*。在括號中規定最大位數。

SMALLINT(size)

-32768 到 32767 常規。0 到 65535 無符號*。在括號中規定最大位數。

MEDIUMINT(size)

-8388608 到 8388607 普通。0 to 16777215 無符號*。在括號中規定最大位數。

INT(size)

-2147483648 到 2147483647 常規。0 到 4294967295 無符號*。在括號中規定最大位數。

BIGINT(size)

-9223372036854775808 到 9223372036854775807 常規。0 到 18446744073709551615 無符號*。在括號中規定最大位數。

FLOAT(size,d)

帶有浮動小數點的小數字。在括號中規定最大位數。在 d 參數中規定小數點右側的最大位數。

DOUBLE(size,d)

帶有浮動小數點的大數字。在括號中規定最大位數。在 d 參數中規定小數點右側的最大位數。

DECIMAL(size,d)

作為字符串存儲的 DOUBLE 類型,允許固定的小數點。

* 這些整數類型擁有額外的選項 UNSIGNED。通常,整數可以是負數或正數。如果添加 UNSIGNED 屬性,那么范圍將從 0 開始,而不是某個負數。

Date 類型:

數據類型描述

DATE()

日期。格式:YYYY-MM-DD

注釋:支持的范圍是從 '1000-01-01' 到 '9999-12-31'

DATETIME()

*日期和時間的組合。格式:YYYY-MM-DD HH:MM:SS

注釋:支持的范圍是從 '1000-01-01 00:00:00' 到 '9999-12-31 23:59:59'

TIMESTAMP()

*時間戳。TIMESTAMP 值使用 Unix 紀元('1970-01-01 00:00:00' UTC) 至今的描述來存儲。格式:YYYY-MM-DD HH:MM:SS

注釋:支持的范圍是從 '1970-01-01 00:00:01' UTC 到 '2038-01-09 03:14:07' UTC

TIME()

時間。格式:HH:MM:SS 注釋:支持的范圍是從 '-838:59:59' 到 '838:59:59'

YEAR()

2 位或 4 位格式的年。

注釋:4 位格式所允許的值:1901 到 2155。2 位格式所允許的值:70 到 69,表示從 1970 到 2069。

* 即便 DATETIME 和 TIMESTAMP 返回相同的格式,它們的工作方式很不同。在 INSERT 或 UPDATE 查詢中,TIMESTAMP 自動把自身設置為當前的日期和時間。TIMESTAMP 也接受不同的格式,比如 YYYYMMDDHHMMSS、YYMMDDHHMMSS、YYYYMMDD 或 YYMMDD。

19、函數

AVG() : 返回數值列的平均值。NULL 值不包括在計算中。

SELECT AVG(OrderPrice) AS OrderAverage FROMOrdersSELECT Customer FROMOrdersWHERE OrderPrice>(SELECT AVG(OrderPrice) FROM Orders)

COUNT() : 返回指定列的值的數目(NULL 不計入)

FIRST() : 返回指定的字段中第一個記錄的值。提示:可使用 ORDER BY 語句對記錄進行排序。

LAST() :返回指定的字段中最后一個記錄的值。提示:可使用 ORDER BY 語句對記錄進行排序。

MAX()? :返回一列中的最大值。NULL 值不包括在計算中。

MIN()? :返回一列中的最小值。NULL 值不包括在計算中。

SUM() :返回數值列的總數(總額)

GROUP BY() :用于結合合計函數,根據一個或多個列對結果集進行分組。消除完全相同的結果行。

HAVING :在使用GROUP BY()時,由于不能與WHERE一起使用,因此使用HAVING替代WHERE。

UCASE() :?把字段的值轉換為大寫。

LCASE()? :?把字段的值轉換為小寫。

MID() :?用于從文本字段中提取字符,類似截取字符串

SELECT MID(column_name,start[,length]) FROM table_name

參數描述

column_name

必需。要提取字符的字段。

start

必需。規定開始位置(起始值是 1)。

length

可選。要返回的字符數。如果省略,則 MID() 函數返回剩余文本。

LEN() :?返回文本字段中值的長度

NOW() : 返回當前的日期和時間。

FORMAT() : 用于對字段的顯示進行格式化。

SELECT ProductName, UnitPrice, FORMAT(Now(),'YYYY-MM-DD') asPerDateFROM Products

SELECT FORMAT(column_name,format) FROM table_name

參數描述

column_name

必需。要格式化的字段。

format

必需。規定格式。

ROUND() : 用于把數值字段舍入為指定的小數位數。

SELECT ROUND(column_name,decimals) FROM table_name

參數描述

column_name

必需。要舍入的字段。

decimals

必需。規定要返回的小數位數。

總結

以上是生活随笔為你收集整理的mysql www.school.com_MySQL 基础学习的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 淫语对白| 在线观看wwww | 在线免费观看污网站 | 一级大黄毛片 | 一区二区三区xxx | 伊人99热| 成人一二三四区 | 91视频免费在线观看 | 成人xxxxx | 欧美在线黄 | 性久久| 中文精品无码中文字幕无码专区 | 日本天堂免费a | 欧洲亚洲一区二区三区 | 男人爽女人下面动态图 | 婷婷亚洲视频 | 中文二区 | 人妻aⅴ无码一区二区三区 阿v免费视频 | 91资源站| 日韩不卡在线播放 | 日穴视频| 色av资源| 蜜臀av免费一区二区三区水牛 | 国产福利片在线观看 | 日韩视频在线播放 | 超碰一区二区三区 | 亚洲国产小视频 | 国产精品一区二区在线观看 | 黄网在线观看免费 | www日本视频 | 少妇3p视频| 中文字幕在线欧美 | 欧美一级片 | 久久性av| 国产视频一区二区三 | 亚洲精品日产精品乱码不卡 | 免费视频二区 | 草草草在线观看 | av无码av天天av天天爽 | 成人精品区 | 国产成人无码精品久在线观看 | 日本黄在线 | 成人免费看毛片 | 久久这里只有精品23 | 黄床大片 | 久久亚洲综合国产精品99麻豆精品福利 | 色桃视频 | 久久人人爽人人爽人人片 | 成人午夜影片 | 国产中出 | 欧美少妇性生活 | 黄色片子视频 | 91夫妻在线 | 97超碰导航| 色黄视频| 欧美在线激情 | 久久99精品久久久久久三级 | 国产一区一一区高清不卡 | 一本视频| 国产一二区在线 | 国产免费美女 | 久精品免费视频 | 91精品国产综合久久久密臀九色 | 精品久久久久久中文字幕人妻最新 | 痴汉电车在线观看 | 一区二区影院 | 国产一区在线视频 | 好屌妞视频这里只有精品 | 精品欧美一区二区精品久久 | 在线黄色av| 性xxxx欧美| 黄色在线视频网站 | 天天射天天操天天干 | 美女隐私无遮挡免费 | 九九综合| 久久久在线免费观看 | 亚洲综合影视 | 成人小视频免费 | 精品国产乱码久久久久久蜜柚 | 黄色国产在线播放 | 亚洲成人午夜影院 | 国产在线一卡二卡 | 国产高清片| 日韩国产在线播放 | 狠狠v欧美v日韩v亚洲ⅴ | 国产伦精品一区二区三区88av | 日本高清一区二区视频 | 欧美色图亚洲色 | 亚州av综合色区无码一区 | 天堂8在线天堂资源bt | 亚洲av成人精品午夜一区二区 | 瑟瑟av| 天堂av一区二区三区 | 成人看片黄a免费看视频 | 亚洲美女视频 | 99精品福利视频 | 成人性生交大全免 | 武侠古典av | 16一17女人毛片 |