MySQL面試題-基礎

来源:https://www.cnblogs.com/blogxu/archive/2020/05/14/gitMRL.html
-Advertisement-
Play Games

MySQL面試題-基礎 1、SQL中文全稱 結構化查詢語言2、SQL語句分類 (1)數據查詢語言DQL包括select欄位名from表名where條件 (2)數據操縱語言DML包括Insertupdatedelete (3)數據定義語言DDL包括createalterdroptruncate (4) ...


MySQL面試題-基礎

1、SQL中文全稱

結構化查詢語言
2、SQL語句分類

(1)數據查詢語言DQL包括select欄位名from表名where條件

(2)數據操縱語言DML包括Insertupdatedelete

(3)數據定義語言DDL包括createalterdroptruncate

(4)數據控制語言DCL包括grant(授權)DENY語句(拒絕授權)REVOKE語句(撤

銷許可權)

(5)事務控制語言TCL包括commitrollbacksavepoint

3、資料庫約束

(1)主鍵約束primarykey

(2)外鍵約束foreignkey

(3)非空約束notnull

(4)唯一約束unique

(5)檢查約束check(Oracle有效)

(6)預設約束default

4、資料庫聚合函數

(1)Sum求和

(2)Avg平均

(3)Max最大值

(4)Min最小值

(5)Count計數

5、查看資料庫showdatabases
6、查看表showtables
7、查看表欄位desc表名
8、修改表名rename表名1to表名2
9、添加表欄位altertablet1addageintfirst/afterxxx;
10、刪除表欄位altertablet1dropage;
11、修改欄位名和類型altertablet1change原名新名新類型;
12、修改欄位類型和位置altertablet1modify欄位名新類型first/afterxxx;
13、數據類型

(1)-整數:int(m)bigint(m)m代表顯示長度需要結合zerofill補0

(2)-浮點數:double(m,d)m代表總長度d代表小數長度超高精度浮點數

decimal(m,d)

(3)-字元串:char固定長度最大255執行效率高varchar可變長度最大65535超

高255建議使用texttext可變長度最大65535

(4)-日期:date年月日time時分秒datetime預設為null,最大9999-12-31

timestamp預設為當前系統時間,最大2038-01-19

14、數據去重distinct
15、模糊查詢like_單個未知字元%代表0或多個未知字元
16、排序orderby欄位1asc/desc,欄位2asc/desc;
17、分頁limit跳過的條數,請求條數
18、字元串相關:

(1)concat()字元串拼接

(2)char_length()字元串長度

(3)instr()查找字元

(4)insert()插入字元

(5)upper()轉成大寫

(6)lower()轉成小寫

(7)trim()去除空格

(8)substring()截取字元串

(9)repeat()重覆

(10)replace()替換

(11)reverse()反轉

19、分組groupby
20、笛卡爾積
如果關聯查詢不寫關聯關係會得到兩張表數據的乘積,這個乘積稱為笛卡爾積
工作中切記不要出現,如果數據量大,會占用大量記憶體,甚至系統崩潰
21、左外連接和右外連接的區別
(1)外連接分為左外和右外得到的是一張表的全部數據和另外一張表的交集數據
(2)左外連接以左表為驅動表,右表為匹配表,右表可能會出現重覆數據或者更null
(3)右外連接情況與做外連接相反
22、什麼是視圖:
(1)視圖和表都是資料庫中的對象,視圖可以理解成一張虛擬的表,視圖本質就是取代
了一段SQL查詢語句
(2)為什麼使用視圖:可以起到SQL語句重用的作用,隱藏敏感信息
23、視圖的作用:重用SQL、隱藏敏感信息
24、視圖的分類:簡單視圖(不包含去重、函數、分組、關聯查詢,可以進行增刪改查)
和複雜視圖(和簡單視圖相反,只能查詢)
25、什麼是索引:索引是資料庫中用於提高查詢效率的技術,類似於目錄
26、為什麼使用索引:如果不使用索引,數據會零散的保存在磁碟塊中,查詢數據需要挨個
遍歷每一個磁碟塊,直到找到數據為止,使用索引後會將磁碟塊以樹樁結構進行保存,查詢
數據時會大大降低磁碟塊的訪問數量,從而提高查詢效率。
27、索引是越多越好嗎?
不是,因為索引會占用存儲空間,只針對常用的查詢欄位創建索引。
28、有索引就一定好嗎?
如果數據量小,添加索引反而會降低查詢效率。
29、索引分類(瞭解)
1.聚集索引:給表添加主鍵約束的時候資料庫會自動通過主鍵創建索引,這個索引稱
為聚集索引。聚集索引的磁碟塊中保存數據
2.非聚集索引:通過其它欄位創建的索引稱為非聚集索引,非聚集索引的磁碟塊中只
保存磁碟塊的地址沒有數據(因為數據只需要有一份)
30、事務
資料庫中執行同一業務多條SQL語句的工作單元,可以保證全部執行成功,或全部執行
失敗
31、事務的ACID特性是保證事務正確執行的四大基本要素
-Atomicity:原子性,最小不可拆分,保證全部成功全部失敗
-Consistency:一致性,從一個一致狀態到另一個一致狀態
-Isolation:隔離性,多個事務之間互不影響
-Durability:持久性,事務完成後數據提交到資料庫中持久生效


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1. CPU高速緩存:在電腦系統中,CPU高速緩存(英語:CPU Cache)是用於減少處理器訪問記憶體所需平均時間的部件。在金字塔式存儲體系中它位於自頂向下的第二層,僅次於CPU寄存器。其容量遠小於記憶體,但速度卻可以接近處理器的頻率。當處理器發出記憶體訪問請求時,會先查看緩存內是否有請求數據。如果存 ...
  • 學習筆記 目錄 前言 運維人員的核心職責:... 1 第一章伺服器硬體與組成原理... 1 伺服器... 1 1.伺服器的分類:... 1 2.伺服器的組成:... 2 1)電源:... 2 2)cpu. 2 3)記憶體... 2 4)磁碟... 3 5)RAID卡(陣列卡).. 3 6)遠程管理卡: ...
  • 一 K3S概述 1.1 K3S介紹 K3S是一個輕量級Kubernetes發行版。易於安裝,記憶體消耗低,所有二進位文件不到40mb。 適用於: 邊緣計算-Edge 物聯網-IoT CI ARM 1.2 K3S特點 k3s是完全相容的Kubernetes發行版,有以下更改: 移除過時的功能、Alpha ...
  • Zabbix監控TCP連接狀態(命令實現)適用centos7 1.添加自定義key配置文件 cat /etc/zabbix/zabbix_agentd.d/tcp_status.conf UserParameter=tcp_status[*],ss -ant |grep -c $1 ss直接讀/pr ...
  • 一 Helm概述 1.1 Helm介紹 Helm 是 Kubernetes 的軟體包管理工具。包管理器類似 Ubuntu 中使用的apt、Centos中使用的yum 或者Python中的 pip 一樣,能快速查找、下載和安裝軟體包。通常每個包稱為一個Chart,一個Chart是一個目錄(一般情況下會 ...
  • 前面我們看了Redis用到的主要數據結構,如簡單動態字元串(SDS)、雙向鏈表、字典、壓縮列表、整數集合等。 但是Redis並沒有直接使用這些數據結構來實現鍵值對,而是基於這些數據結構創建了一個對象系統,這個系統包括字元串對象、列表對象、哈希對象、集合對象、有序集合對象,除此之外,redis的對象系 ...
  • 1146 Table 'performance_schema.session_variables' doesn't exist 一 問題出現場景 1 在Flask使用SQLAlchemy操作mysql的時候會出現 2 使用Navicat連接資料庫會出現 附:連接Navicat成功的要點 (1) 需要 ...
  • 記憶體的讀寫速度遠大於磁碟的讀寫速度,減少磁碟讀寫,可以作為重點優化方向。 資料庫內部最重要的就是存儲結構,存儲結構必然涉及到數據結構知識。比如用到了常用的哈希圖、樹。 MYSQL資料庫常用兩種引擎,InnoDB、MyISAM,可以直接對錶指定資料庫引擎。 MYSQL索引是一種數據結構,幫助更快的查詢 ...
一周排行
    -Advertisement-
    Play Games
  • 概述:在C#中,++i和i++都是自增運算符,其中++i先增加值再返回,而i++先返回值再增加。應用場景根據需求選擇,首碼適合先增後用,尾碼適合先用後增。詳細示例提供清晰的代碼演示這兩者的操作時機和實際應用。 在C#中,++i 和 i++ 都是自增運算符,但它們在操作上有細微的差異,主要體現在操作的 ...
  • 上次發佈了:Taurus.MVC 性能壓力測試(ap 壓測 和 linux 下wrk 壓測):.NET Core 版本,今天計劃準備壓測一下 .NET 版本,來測試並記錄一下 Taurus.MVC 框架在 .NET 版本的性能,以便後續持續優化改進。 為了方便對比,本文章的電腦環境和測試思路,儘量和... ...
  • .NET WebAPI作為一種構建RESTful服務的強大工具,為開發者提供了便捷的方式來定義、處理HTTP請求並返迴響應。在設計API介面時,正確地接收和解析客戶端發送的數據至關重要。.NET WebAPI提供了一系列特性,如[FromRoute]、[FromQuery]和[FromBody],用 ...
  • 原因:我之所以想做這個項目,是因為在之前查找關於C#/WPF相關資料時,我發現講解圖像濾鏡的資源非常稀缺。此外,我註意到許多現有的開源庫主要基於CPU進行圖像渲染。這種方式在處理大量圖像時,會導致CPU的渲染負擔過重。因此,我將在下文中介紹如何通過GPU渲染來有效實現圖像的各種濾鏡效果。 生成的效果 ...
  • 引言 上一章我們介紹了在xUnit單元測試中用xUnit.DependencyInject來使用依賴註入,上一章我們的Sample.Repository倉儲層有一個批量註入的介面沒有做單元測試,今天用這個示例來演示一下如何用Bogus創建模擬數據 ,和 EFCore 的種子數據生成 Bogus 的優 ...
  • 一、前言 在自己的項目中,涉及到實時心率曲線的繪製,項目上的曲線繪製,一般很難找到能直接用的第三方庫,而且有些還是定製化的功能,所以還是自己繪製比較方便。很多人一聽到自己畫就害怕,感覺很難,今天就分享一個完整的實時心率數據繪製心率曲線圖的例子;之前的博客也分享給DrawingVisual繪製曲線的方 ...
  • 如果你在自定義的 Main 方法中直接使用 App 類並啟動應用程式,但發現 App.xaml 中定義的資源沒有被正確載入,那麼問題可能在於如何正確配置 App.xaml 與你的 App 類的交互。 確保 App.xaml 文件中的 x:Class 屬性正確指向你的 App 類。這樣,當你創建 Ap ...
  • 一:背景 1. 講故事 上個月有個朋友在微信上找到我,說他們的軟體在客戶那邊隔幾天就要崩潰一次,一直都沒有找到原因,讓我幫忙看下怎麼回事,確實工控類的軟體環境複雜難搞,朋友手上有一個崩潰的dump,剛好丟給我來分析一下。 二:WinDbg分析 1. 程式為什麼會崩潰 windbg 有一個厲害之處在於 ...
  • 前言 .NET生態中有許多依賴註入容器。在大多數情況下,微軟提供的內置容器在易用性和性能方面都非常優秀。外加ASP.NET Core預設使用內置容器,使用很方便。 但是筆者在使用中一直有一個頭疼的問題:服務工廠無法提供請求的服務類型相關的信息。這在一般情況下並沒有影響,但是內置容器支持註冊開放泛型服 ...
  • 一、前言 在項目開發過程中,DataGrid是經常使用到的一個數據展示控制項,而通常表格的最後一列是作為操作列存在,比如會有編輯、刪除等功能按鈕。但WPF的原始DataGrid中,預設只支持固定左側列,這跟大家習慣性操作列放最後不符,今天就來介紹一種簡單的方式實現固定右側列。(這裡的實現方式參考的大佬 ...