10:50分
3、多表查詢
1、兩種方式
1、不加where條件(笛卡爾積)
select t1.name,t2.name from t1,t2;
2、加where條件
select 欄位名列表 from 表1,表2 where 條件;
3、示例
1、查詢省、市詳細資訊
河北省 石家莊市
河北省 廊坊市
湖北省 武漢市
select sheng.s_name,city.c_name from sheng,city where sheng.s_id=city.cfather_id;
2、查詢省、市、縣詳細資訊
select sheng.s_name,city.c_name,xian.x_name from sheng,city,xian
where
sheng.s_id=city.cfather_id and
city.c_id=xian.xfather_id;
4、連線查詢
1、內連線(inner join)
1、語法格式
select ... from 表1 inner join 表2 on 條件
inner join 表3 on 條件;
2、示例
1、查詢省、市詳細資訊
select sheng.s_name,city.c_name from sheng
inner join city
on sheng.s_id=city.cfather_id;
2、查詢省、市、縣詳細資訊
select sheng.s_name,city.c_name,xian.x_name from
sheng inner join city
on sheng.s_id=city.cfather_id
inner join xian
on city.c_id=xian.xfather_id;
2、外連線
1、左連線(left join)
1、以左表為主顯示查詢結果
2、右連線(right join)
1、以右表為主顯示查詢結果
select sheng.s_name,city.c_name,xian.x_name from
sheng left join city
on sheng.s_id=city.cfather_id
right join xian
on city.c_id=xian.xfather_id;
5、約束
1、非空約束(not null)
1、不允許該字段的值為null
## name varchar(20) not null
2、預設約束(default)
1、插入記錄時,不給該字段賦值,則使用預設值
## *** enum("m","f","s") not null default "s";
6、索引
1、定義
對資料庫表的一列或者多列的值進行排序的一種結構(btree方式)
2、優點
加快資料的檢索速度
3、缺點
1、占用物理儲存空間
2、當對表中資料更新時,索引需要動態維護,占用系統資源,降低資料維護速度
4、索引示例
1、開啟執行時間檢測
set profiling=1;
2、執行查詢語句(沒有索引)
select name from t1 where name="lucy88888";
3、在name欄位建立索引
create index name on t1(name);
4、再執行查詢語句(有索引)
select name from t1 where name="lucy99999";
5、對比執行時間
show profiles;
7、索引分類
1、普通索引(index) && 唯一索引(unique)
1、使用規則
1、可設定多個字段
2、約束
普通索引:無約束 key標誌 :mul
唯一索引:字段值不允許重複,可為null uni
3、把經常用來查詢的字段設定為索引字段
2、建立表建立
create table 表名(
index(name),
index(age),
unique(phnumber),
unique(cardnumber)
3、已有表建立
create [unique] index 索引名 on 表名(欄位名);
4、檢視索引
1、desc 表名; --> key標誌
2、show index from 表名\g;
5、刪除索引
drop index 索引名 on 表名;
2、主鍵(primary key) && 自增長(auto_increment)
1、使用規則
1、只能有1個字段
2、約束 :字段值不允許重複,且不能為 null
3、key標誌 :pri
4、通常設定編號id為主鍵,能唯一鎖定1條記錄
2、建立表時建立
create table 表名(
id int primary key auto_increment,
alter table 表名 auto_increment =1000;
3、已有表建立
alter table 表名 add primary key(id);
4、刪除
1、先刪除自增長
alter table 表名 modify id int;
2、刪除主鍵
alter table 表名 drop primary key;
3、外來鍵(foreign key)
1、定義
讓當前表字段的值在另乙個表的範圍內選擇
2、語法
foreign key(參考欄位名)
references 主表(被參考欄位名)
on delete 級聯動作
on update 級聯動作
3、使用規則
1、主表、從表字段資料型別要一致
4、示例
1、繳費資訊表(財務)
id 姓名 班級 繳費金額
1 唐伯虎 aid08 300
2 點秋香 aid08 200
create table jftab(
id int primary key,
name varchar(20) not null,
class char(5) default "aid",
money smallint
)charset=utf8;
mysql部落格園 mysql
一 聯合查詢 在兩種情況下可能用到 1 想要的結果在一條語句中會引起邏輯衝突,只能放在兩條語句中是要使用聯合查詢 2 一張表的資料量非常大時,會分隔成多張表儲存,要查詢時也要用到聯合查詢 2,聯合查詢中的order by必須搭配上limit關鍵字才能生效!因為系統預設的聯合查詢的結果往往比較多,所以...
python部落格園 python 模擬部落格園系統
作業 用 模擬系統。專案分析 一 首先程式啟動,頁面顯示下面5內容供使用者選擇 1.請登入 2.請註冊 3.進入文章頁面 5.進入日記頁面 6.進入收藏頁面 7.登出賬號 8.退出整個程式 二 必須實現的功能 1.註冊功能要求 a.使用者名稱 密碼要記錄在檔案中。b.使用者名稱要求 只能含有字母或者...
mysql安裝 部落格園 mysql安裝
2.解壓 解壓並在解壓後根目錄建立my.ini和data資料夾 basedir 替換成自己的根目錄 my.ini client 設定mysql客戶端預設字符集 default character set utf8 mysqld 設定3306埠 port 3306 設定mysql的安裝目錄 based...