MySQL(一 基礎語法)

2021-10-24 16:19:47 字數 3595 閱讀 4042

常見的資料庫管理系統:

為什麼使用mysql:mysql是一種開放源**的關係型資料庫管理系統,開發者為瑞典mysqlab公司,在2023年被sun公司收購,而2023年sun公司又被oracle公司收購。目前mysql被廣泛用在interne上,無論大小企業,目前都在很廣泛的使用mysql。由於其體積小、速度快、成本低、尤其開源這一特點,使得很多網際網路公司都選擇了mysql作為資料庫。

關係型資料庫

sql語句的分類:

建立資料庫

-- 建立資料庫

create database my_db01;

-- 判斷是否存在資料庫 ,不存在則建立

create database if not exists my_db02;

-- 建立資料庫,指定字符集

create database my_db03 default character set utf8;

檢視資料庫
-- 檢視所有資料庫

show databases;

-- 檢視某個資料庫的定義資訊

show create databases my_db01;

修改資料庫
-- 修改資料庫的預設字符集

alter database my_db01 default character set gbk;

刪除資料庫
-- 刪除資料庫

drop database my_db01;

使用資料庫
-- 改變使用的資料庫

use my_db01;

-- 檢視當前使用的資料庫

select database();

建立表
create table students(

id int,

name varchar(10),

birthday date,

score double

)

檢視表
-- 檢視所有表

show tables;

-- 檢視表結構

desc students;

-- 檢視建立表的sql語句

show create table students;

-- 快速建立乙個表結構相同的表(mysql特有)

create table stu2 like students;

刪除表
-- 直接刪除表

drop table students;

-- 判斷表是否存在後刪除表

drop table if exists students;

修改表
-- 新增列

alter table students add des text;

-- 修改列型別

alter table students modify des varchar(20);

-- 修改列名

alter table students change des dess text;

-- 刪除列

alter table students drop dess;

-- 修改表名

rename table students to stu

-- 修改字符集

alter table stu character set gbk;

插入資料
-- 為指定字段新增值,不寫字段應該將值與表結構字段順序、個數一一對應

insert into stu(id,name,birthday,score)

values(1001,'張三','2000-09-21',80.5),

(1002,'李四','1999-3-21',85),

(1003,'王五','1998-4-20',90);

更新資料
-- 更新表中指定欄位的所有資料

upate stu set score=100;

-- 帶條件的修改

update stu set score=100 where id=1001;

刪除資料
-- 刪除表中所有資料

delete from stu;

-- 刪除指定資料

delete from stu where id=1002;

-- 重置表(相當於刪除表的結構,重新建立一張表)

truncate table stu;

簡單查詢
-- 查詢表中全部資料

select * from stu;

-- 查詢指定列

select id,name,score from stu;

-- 給指定列設定別名(as也可以省略)

select id as '學號',name as '姓名' ,score as '成績' from stu;

-- 查詢表,並且結果不重複

select distinct * from stu;

條件查詢

比較運算子

說明》、<、<=、>=、=、<>

sql中<>表示不等於,mysql中也可以使用!=

between 邊界 and 邊界

表示乙個返回,包含邊界

in(值1,值2···)

和值列表中匹配相等

like 『規則』

模糊查詢(_代表乙個字元,%代表任意個字元)

is null

查詢某一列為null的值

-- 查詢分數大於90的行

select * from stu where score>90;

-- 查詢生日在2023年到2023年之間的行

select * from stu where birthday between '2000-1-1' and '2010-1-1';

-- 查詢名字是張三或李四的行

select * from stu where name in('張三','李四');

-- 查詢姓名第乙個字是李的行

select * from stu where name like '李%';

-- 查詢分數為null的行

select * from stu where socre is null;

邏輯運算子

說明and 或&&

與or 或 ||

或not 或 !

-- 查詢生日在2023年到2023年之間 並且 成績在90以上的行

select * from stu where birthday between '2000-1-1' and '2010-1-1' and score>90;

-- 查詢id為1001 或者 name為張三的行

select * from stu where id=1001 or name='張三';

-- 查詢s成績 不 為空的列

select * from stu where socre is not null;

MySQL基礎語法一

1 建立資料庫 建立資料庫 ruozedata create database ruozedata 2 建立使用者並重新整理使用者許可權 grant all privileges on ruozedata.to ruoze identified by 123456 flush privileges ...

mysql基礎語法演示 mysql基礎語法

1 ddl 增刪改查 1 select 獲取資料 select from 表名 where 條件 2 update 更新資料 update 表名 set 欄位名 值,欄位名 值 where 條件 3 delete 刪除資料 delete from 表名 where 條件 4 insert into ...

mysql 語法入門 mysql基礎語法

1 dml 增刪改查 1 select 獲取資料 select from 表名 where 條件 2 update 更新資料 update 表名 set 欄位名 值,欄位名 值 where 條件 3 delete 刪除資料 delete from 表名 where 條件 4 insert into ...