常見的資料庫管理系統:
為什麼使用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 ...