mysql數據庫的語法及簡介

1.數據庫簡單介紹

1.1.數據庫

  概念:存儲數據,以文件的形式存儲python

  好處:mysql

  1. 永久保存數據(理論上)
  2. 數據共享
  3. 能夠經過命令進行數據的精準查找

1.2.數據庫分類

  1.關係型數據redis

    mysql、 oracle、 sql server db2 ....sql

    特色:以表格形式進行數據庫存儲數據庫

  2.非關係型數據(NOSQL數據庫)oracle

    MongoDB 、redis函數

 2.mysql數據庫操做

1.鏈接數據spa

mysql -uroot -p 回車server

輸入密碼 ******blog

2.數據庫的操做

  1.建立

    create database 庫名;

  2.進庫

    use 庫名;

  3.刪庫

    drop database ku;

  4.顯示當前用戶下全部的數據庫

    show databases;

3.mysql數據庫中數據的類型:

  1)整數類型的儲存和範圍

  2)日期和時間類型:

  3)字符串型:

2.1. 表操做

1.建立

  create table 表名(

    字段名 類型(長度) 是否爲空  是否爲主鍵

  );

 create table city(
#設置主鍵並自增
 id int(11) primary key auto_increment, 
#設置變長字符串,並設置不能爲空
title varchar(32) not null,
#時間設置
date1 timestamp not null default '0000-00-00 00:00:00'on update current_timestamp,
date2 date default null,
date3 datetime default null,
time1 time default null,
#text設置
#text:與char和varchar不一樣的是,text不能夠有默認值,其最大長度是2的16次方-1
#TINYTEXT: 256 bytes
#TEXT: 65,535 bytes => ~64kb
#MEDIUMTEXT: 16,777,215 bytes => ~16MB
#LONGTEXT: 4,294,967,295 bytes => ~4GB

content text not null
); 

2. 刪除表

  drop table 表名;

3.修改表的字段

  alter table 表名 add 字段名稱 類型(長度) 約束條件;

  alter table 表名 drop 字段名稱;

  alter table 表名 change 舊字段 新字段  類型(長度) 約束條件;

4.查看錶

  desc 表名;

2.2.表中數據的操做

 

1  新增

  insert into 表名 values(要求:字段的位置與個數必須一一對應)

  insert into 表名(表字段名稱,多個以「,」間隔)values(字段值多個以「,」間隔)

  insert into 表名2 select * from 表名)

 

 2 修改

  update 表名 set 字段名=‘值’ where 字段名=‘條件值’

  update 表名 set 字段1 =‘值1,字段2=‘值2where 字段1="條件1" and 字段2=‘條件2

 

3 刪除

  delete from 表名 where 條件1 =‘值1

  delete from 表名;

 

 4 清空表

  truncate 表名;

 

 5查詢(核心)

  1).查詢全部

    select * from  表名;

    select :表示查詢

    * :表示全部(通配符)

    from :表示從哪一個表進行查詢

    注意:最好把*」換成具體字段

 

  2).查詢某兩個字段

    select 字段1,字段2 from 表名

 

  3). 根據條件查詢

    select * from where 字段1 =‘值1

    where :表示條件,跟在where後面的通通稱之爲條件

 

  4). 多條件查詢

    select * from 表名 where 字段1=‘值1and/or 字段2=‘值2and/or 字段3=‘值3

    注意: and 表示而且

       or 表示 或者

  5). 邏輯運算符查詢

    select * from where 字段1 != 1 and z2 >=v2

    邏輯運算符: = ,<,>,!=,<>,<=,>=

 

   6).模糊查詢

    select * from 表名 where 字段 like '%羊蠍子'

    like :表示模糊查詢

    以什麼開頭: "s%"

    以什麼結尾:'%s'

    包含: '%s%'

 

  7 ).集合查詢

    select * from 表名 where 字段 in('1','2','3')

    in :表示 集合

    not in:表示反向集合

 

  8).區間查詢

    select * from where 字段 between z1 and z2;

    注意: between ... and ... 表示區間查詢

  9).排序

    select * from order by 字段 asc

    注意:order by  表示排序

    正序: ASC 默認

    倒序: DESC

 

  10).嵌套查詢  

    select * from where 字段 inselect 字段 from where id=「值1」)

    注意:()優先執行

    總結: 遇到"="值惟一, 遇到in值爲集合

 3.sql語法進階

  在數據庫操做中,單張表的增刪改查,也有多表聯查,以及聚合及分組等多種狀況,如下是經常使用到的語法及函數:

 聚合函數:

  最大 max()

  最小 min()

  平均 avg()

  求和 sum()

  總個數 count()

 分組函數 group by   having

 排序 order BY ASC  desc

 去重複 distinct

 分頁: limit 參數1:從第幾條開始,起始位置爲0,參數2:顯示的條數

 多表聯合查詢 (笛卡爾乘積)

 左鏈接查詢 A left join B on 條件 left join C on 條件

 右鏈接查詢 right join

 內鏈接查詢 inner join

 

 1.總結(執行順序)
        第1步.where ...
        第2步.group by ...
        第3步.select ...聚合函數 from ...
        第4步.having ...
        第5步.order by ...
        第6步.limit ...

    2.order by

        1.做用:給查詢的結果進行排序

        2.排序方式

            1.ASC(默認) : 升序

            2.DESC  : 降序

相關文章
相關標籤/搜索