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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql字段简索引_MySQL常用的一些语句,索引,字段等

發(fā)布時間:2023/12/2 数据库 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql字段简索引_MySQL常用的一些语句,索引,字段等 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1、庫相關:

建庫:

character set:指定編碼

COLLATE:排序規(guī)則 utf8mb4_general_ci 大小寫不敏感

CREATE DATABASE `test_db` default character set utf8mb4 COLLATE utf8mb4_general_ci;

查看建庫語句:

SHOW CREATE DATABASE `test_db`;

2、數(shù)據(jù)表相關:

建表:

CREATE TABLE `video` (

`id` int(10) unsigned NOT NULL AUTO_INCREMENT,

`name` varchar(100) NOT NULL DEFAULT '' COMMENT '視頻名字',

`cat_id` smallint(4) unsigned NOT NULL DEFAULT '0' COMMENT '分類id',

`image` varchar(200) NOT NULL DEFAULT '',

`url` varchar(200) NOT NULL DEFAULT '',

`type` tinyint(2) unsigned NOT NULL DEFAULT '0',

`content` text,

`uploader` varchar(200) NOT NULL DEFAULT '',

`create_time` int(10) unsigned NOT NULL DEFAULT '0',

`update_time` int(10) unsigned NOT NULL DEFAULT '0',

`status` tinyint(2) unsigned NOT NULL DEFAULT '0',

PRIMARY KEY (`id`),

INDEX `cat_info`(`cat_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

查看表:

SHOW CREATE TABLE `video`;#建表語句

DESC `video`;

DESCRIBE `video`;

修改表的存儲引擎:

ALTER TABLE `video` ENGINE=MyISAM;

ALTER TABLE `video` ENGINE=InnoDB;

3、索引增加查看刪除

索引創(chuàng)建:

3.a、加主鍵索引

ALTER TABLE `table_name` ADD PRIMARY KEY (`column`)

復合主鍵:

ALTER TABLE `table_name` ADD PRIMARY KEY(`column1`,`column2`);

3.b、加唯一索引

ALTER TABLE `table_name` ADD UNIQUE (`column`)

3.c、加單列索引

ALTER TABLE `table_name` ADD INDEX index_name (`column`)

3.d、加全文索引

ALTER TABLE `table_name` ADD FULLTEXT (`column`)

Note:

3.e、添加復合索引[多列索引] [最左前綴原則]

ALTER TABLE `table_name` ADD INDEX index_name (`column1`,`column2`,`column3`)

Note:

note.1

多個單列索引與單個多列索引的查詢效果不同,因為執(zhí)行查詢時,MySQL只能使用一個索引,會從多個索引中選擇一個限制最為嚴格的索引。

平時用的SQL查詢語句一般都有比較多的限制條件,所以為了進一步榨取MySQL的效率,就要考慮建立組合索引。

例如對上面video表中針對name和create_time建立一個組合索引:

name字段取前50個字符建立索引。

ALTER TABLE `video` ADD INDEX index_name_ctime (name(50),create_time)

建立這樣的組合索引,其實是相當于分別建立了下面兩組組合索引:

* name,create_time

* name

為什么沒有create_time這樣的組合索引呢?

這是因為MySQL組合索引“最左前綴”的結果。簡單的理解就是只從最左面的開始組合。并不是只要包含這兩列的查詢都會用到該組合索引,如下面的幾個SQL所示:

能使用到上面的索引:

* SELECT * FROM `video` WHREE name='測試' AND create_time=1234567890;

* SELECT * FROM `video` WHREE name='測試';

不能使用上面的索引:

* SELECT * FROM `video` WHREE create_time=1234567890;

note.2、索引不會包含有NULL值的列

只要列中包含有NULL值都將不會被包含在索引中,復合索引中只要有一列含有NULL值,那么這一列對于此復合索引就是無效的。

所以我們在數(shù)據(jù)庫設計時不要讓字段的默認值為NULL。

note.3、索引列排序

MySQL查詢只使用一個索引,因此如果where子句中已經(jīng)使用了索引的話,那么order by中的列是不會使用索引的。

因此數(shù)據(jù)庫默認排序可以符合要求的情況下不要使用排序操作,盡量不要包含多個列的排序,如果需要最好給這些列創(chuàng)建復合索引。

note.4、like語句操作

使用like時,只有 like "aaa%" 才會使用到索引

note.5、不要在列上進行運算

例如:select * from users where YEAR(create_date)<2007,將在每個行上進行運算,這將導致索引失效而進行全表掃描,

因此我們可以改成:select * from users where create_date

note.6、字符串字段的索引,查詢時帶上單引號

參考文章:

note.7、最后

MySQL只對以下操作符才使用索引:

,>=,between,in,以及某些時候的like(不以通配符%或_開頭的情形)。

而理論上每張表里面最多可創(chuàng)建16個索引,不過除非是數(shù)據(jù)量真的很多,否則過多的使用索引也不是那么好玩的,比如我剛才針對text類型的字段創(chuàng)建索引的時候,系統(tǒng)差點就卡死了。

索引查看:

SHOW INDEX FROM `table_name`;

索引刪除:

DROP INDEX `index_name` ON `table_name`;

ALTER TABLE `table_name` DROP INDEX `index_name`;

4、字段增加修改刪除

增加:

增加字段:

ALTER TABLE `table_name` ADD `email` VARCHAR(128) NOT NULL DEFAULT '' COMMENT '郵箱';

增加字段,并將增加的字段位于某個字段后面:

ALTER TABLE `table_name` ADD `email` VARCHAR(128) NOT NULL DEFAULT '' COMMENT '郵箱' AFTER `telephone`;

修改:

修改字段數(shù)據(jù)屬性:

ALTER TABLE `table_name` MODIFY `email` CHAR(80) NOT NULL DEFAULT '' COMMENT '定長郵箱';

修改字段名稱和屬性:

ALTER TABLE `table_name` CHANGE `email` `user_email` VARCHAR(128) NOT NULL DEFAULT '' COMMENT '用戶郵箱';

給字段設置默認值:

ALTER TABLE `table_name` ALTER `user_email` SET DEFAULT 'username@qq.com';

修改自增長鍵的起始值:

ALTER TABLE `table_name` AUTO_INCREMENT=100;

刪除:

刪除字段:

ALTER TABLE `table_name` DROP COLUMN `user_email`;

刪除多個字段:

ALTER TABLE `table_name` DROP COLUMN `user_email`,DROP COLUMN `telephone`;

總結

以上是生活随笔為你收集整理的mysql字段简索引_MySQL常用的一些语句,索引,字段等的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 国产伦人伦偷精品视频 | 国产在线www | 91这里只有精品 | 日韩精品视频免费播放 | 色综合五月 | 亚洲精品无码久久久久 | 天天av综合 | 五月天丁香社区 | 在线一区不卡 | 色狠狠一区二区三区 | 777久久| 欧美性猛交ⅹ乱大交3 | 亚洲黄一区 | hs网站在线观看 | 日韩三级大片 | 国产原创剧情av | av免费影院| 国产视频不卡一区 | 色女人天堂| 少妇高潮惨叫久久久久久 | 亚洲1级片 | 免费国产黄| 色欲AV无码精品一区二区久久 | 草久久免费视频 | a级片在线视频 | 日韩天堂在线观看 | 欧美爱爱爱 | 91视频你懂的 | 国产精品免费一区二区三区在线观看 | 狂野少女电影在线观看国语版免费 | 夜夜久久久 | 污视频软件在线观看 | 日韩精品麻豆 | 免费播放黄色片 | 女人脱了内裤趴开腿让男躁 | 亚洲成人午夜影院 | 1024久久| 国产91精品久久久 | 国产精品亚洲专区无码牛牛 | 免费成人深夜小野草 | 美国做爰xxxⅹ性视频 | 国产黄色片av | 雪白的扔子视频大全在线观看 | 国产精品国产三级国产aⅴ下载 | 在线观看的黄色网址 | 成人在线看片 | 99视频在线 | 天堂影音 | av在线播放中文字幕 | 成人91视频 | 黄视频免费在线观看 | 欧美日韩中文字幕一区 | 天堂在线日本 | 吃瓜网今日吃瓜 热门大瓜 色婷在线 | 国产精品久久一区 | 久热在线视频 | 爱av在线 | 三级在线观看网站 | 少妇高潮毛片色欲ava片 | 日韩欧美国产亚洲 | 亚洲依依 | 成人免费在线观看网站 | 可以看毛片的网站 | 成人a视频在线观看 | 欧美日韩亚洲精品内裤 | 在线一级| 一区二区三区在线看 | 在线h网站 | 韩国伦理电影免费在线 | 好吊色网站 | 天天操天天碰 | 九九热这里只有 | 日本免费在线 | 中文字幕一区二区人妻 | 国产wwww | 青青草视频国产 | 伊人影视大全 | 国产视频网站在线观看 | 亚洲精品少妇一区二区 | 高清免费视频日本 | 自由成熟xxxx色视频 | 国产伦精品一区二区三区视频我 | 久久成人在线观看 | 日本老熟妇毛茸茸 | 国产三级三级看三级 | 99热免费在线 | 亚洲精品一区二区三区区别 | 女人18毛片一区二区三区 | 就要操av| 午夜视频一区 | 狠狠操免费视频 | 日韩精品一区二区三区国语自制 | 欧美天堂在线观看 | 中文字幕观看视频 | 中文字幕制服丝袜 | 娇妻第一次尝试交换的后果 | 97精品人妻一区二区三区香蕉 | 日韩亚洲视频在线观看 | 小嫩嫩12欧美 |