大家好,我是IT共享者,人稱皮皮。今天給大家講講MySQL中的查詢操作。
前言
我們在以前,大概學了一下如何通過命令創建數據庫,創建表等基本操作。
但是實際上啊,至少在我的實際工作中,用到的不是太多,了解就可以。
因為我們可以通過一些可視化軟件,像Navicat for MySQL
等。
可以很方便的幫助我們創建數據庫,創建表,修改表等操作。
Navicat for MySQL簡單示例
創建數據庫
使用Navicat for MySQL
連接好一個Mysql
服務之后。
右擊--> 新建數據庫
-
選擇新建數據庫信息
字符集一定要選擇
utf8mb4 -- UTF-8 Unicode
,這個表示支持存儲Emoji
表情。排序規則一定要選擇
utf8mb4_general_ci
。至於為什么,我也不知道...,原諒我是個碼農吧。
就這樣,一個數據庫創建完成了,是不是很輕松。
創建表
右擊表--> 新建表
-
制定表結構
-
保存表(
Ctrl+s
)
設計表
在實際中,我們常常會更改表結構,也叫設計表
右擊表-->設計表
- 修改表
3.保存即修改
查詢
上述主要復現了一下如何通過可視化軟件操作數據庫,確實會比直接命令方便很多很多。
但是查詢這個操作,那可視化軟件就真的無能為力了。
畢竟我們不管是封裝在后台還是自己的軟件中。
都是要使用原生SQL的,這個是無法避免的,並且原生SQL查詢是最靈活的!!!
終於迎來了最最最重要的環節,學習原生sql
。
需求分析
假設我們現在要做一個學生管理系統,所以首先確定,會有一個學生表,用於存放學生的信息,像姓名了,年齡了,性別了,等。
然后想了又想,學生肯定要屬於哪個班級的,張三是一班的,李四是二班的,等。
所以我們可能就會有兩張表了,一個是學生信息表,一個是班級表,然后學生屬於哪個班級。
就像小時候戴的學生胸牌一樣,姓名:xxx,班級:xxx
等。
想了想,我覺得表結構大概如下
表結構圖
表結構圖.xlsx
表結構代碼
school_test.sql
應該通過這兩張表,基本可以把我們的sql
語法,學的差不多,一起來看看叭。
查詢(select)
既然表里面有這么多數據,那就需要查詢了,首先是。
查詢所有
sql
-- 語法
SELECT * from <表名>;
-- 例如,查詢學生表
SELECT * from student;
執行結果
where條件查詢
但是有時候,我們可能需要查詢帶有一些條件的,比如id=1
的,或者name=張三
的等。
這時候就需要用到where
。
sql
-- 語法
SELECT * from <表名> where <條件>;
-- 例如,查詢id=1的數據
SELECT * from student where id=1;
執行結果
這樣,我們就把id=1
的數據查找出來了。
同理,還可以寫其他條件。
查詢性別為男的(gender=男)
SELECT * from student where gender="男";
執行結果
這樣,就把gender=男
的都查出來了。
where多個條件查詢(and)
假設現在表內容如下。
有倆琪琪,一個是男琪琪,一個是女琪琪,那我們查的時候,肯定要區分是男的還是女的琪琪了。
所以這時候需要where
多個條件了。
and的意思是查詢滿足所有條件的數據。
sql
-- 語法
SELECT * from student where <條件> and <條件> ...;
-- 例如,查詢男琪琪
SELECT * from student where name="琪琪" and gender="男";
執行結果
這樣,通過多個條件就卡住了更精准的數據。
select 選擇列
在上面使用時,我們使用的都是select * from <表名>
。
假設我們的數據如下
select *
就表示,選擇所有列
結果如下
如果是select id,name age
,表示選擇指定列
結果如下
select
還能給列起別名
例如
SELECT id,name as "姓名",age from student;
執行結果
總結
本章主要講述了如何使用Navicat for MySQL
新建數據庫,新建表,設計表等簡單操作。
后續又根據實際需求設計出簡單的學生表和班級表,並且簡單是使用了select
查詢。
后來又講解select *
和select 列1,列2
的區別。
如果在操作過程中有任何問題,記得下面留言,我們看到會第一時間解決問題。
敬往事一杯酒,自此不再回頭。
我是碼農星期八,如果覺得還不錯,記得動手點贊一下哈。感謝你的觀看。
如果在操作過程中有任何問題,記得下面留言,我們看到會第一時間解決問題。