mysql資料庫(入門)五

2021-08-31 16:28:13 字數 3812 閱讀 9608

一對一

練習:請設計表儲存以下資料

create table userinfo(userid int,nick varchar(10),tel varchar(15),address varchar(20));

insert into user values(null,'wukong','123456'),(null,'bajie','bacd'),(null,'libai','aabbcc');

insert into userinfo values(1,'齊天大聖','13833446622','花果山'),(2,'二師兄','13833446622','高老莊'),(3,'李白','13833446622','語文書裡');

完成以下查詢:

查詢李白的使用者名稱和密碼是什麼

select u.username,u.password

from user u join userinfo ui

on u.id=ui.userid

where ui.nick='李白';

查詢每乙個使用者的所有資訊

select *

from user u join userinfo ui

on u.id=ui.userid;

查詢使用者名稱bajie 的暱稱是什麼

select ui.nick

from user u join userinfo ui

on u.id=ui.userid

where u.username='bajie';

一對多練習:建立表儲存以下資料 t_emp t_dept

悟空 28歲 3000月薪 神仙部 花果山

劉備 34歲 8000月薪 三國部 蜀國

路飛 18歲 1000月薪 海賊部 日本

八戒 30歲 4000月薪 神仙部 花果山

create table t_emp(empno int primary key auto_increment,ename varchar(10),age int,sal int,deptno int);

create table t_dept(deptno int primary key autoincrement,dname varchar(10),loc varchar(10));

insert into t_dept values(null,'神仙部','花果山'),(null,'三國部','蜀國'),(null,'海賊部','日本');

insert into t_emp values(null,'悟空',28,3000,1),(null,'劉備',34,8000,2),(null,'路飛',18,1000,3),(null,'八戒',30,4000,1);

做題:查詢每個員工的姓名和部門名

select e.ename,d.dname

from t_emp e join t_dept d

on e.deptno=d.deptno;

查詢工作在花果山的員工姓名及工資

select e.ename,e.sal

from t_emp e join t_dept d

on e.deptno=d.deptno

where d.loc='花果山';

多對多練習:建立表儲存以下資料

唐僧的學生有:悟空,大哥

蒼老師的學生有: 大哥,大姐

create table teacher(id int primary key auto_increment,name varchar(10));

create table student(id int primary key auto_increment,name varchar(10));

create table t_s(tid int,sid int);

insert into teacher values(null,'唐僧'),(null,'老師');

insert into student values(null,'悟空'),(null,'大哥'),(null,'大姐');

insert into t_s values(1,1),(1,2),(2,2),(2,3);

查詢蒼老師的學生姓名

select s.name

from teacher t join t_s ts

on t.id=ts.tid

join student s

on ts.sid=s.id

where t.name='蒼老師';

查詢大哥的老師姓名

select t.name

from teacher t join t_s ts

on t.id=ts.tid

join student s

on ts.sid=s.id

where s.name='大哥'

儲存以下資料:

使用者表:劉德華,貂蟬

insert into user values(null,'劉德華'),(null,'貂蟬');

角色表:男遊客,男管理員,女遊客,女會員

insert into role values(null,'男遊客'),(null,'男管理員'),(null,'女遊客'),(null,'女會員');

許可權表:男瀏覽,男發帖,男刪帖,女瀏覽,女發帖

insert into module values(null,'男瀏覽'),(null,'男發帖'),(null,'男刪帖'),(null,'女瀏覽'),(null,'女發帖');

關係:男遊客->男瀏覽;男管理員->男瀏覽,男發帖,男刪帖;女遊客-》女瀏覽;女會員-》女瀏覽,女發帖

劉德華-》男管理員和女遊客

貂蟬-》女會員和男遊客

insert into r_m values(1,1),(2,1),(2,2),(2,3),(3,4),(4,4),(4,5);

insert into u_r values(1,2),(1,3),(2,4),(2,1);

練習:查詢每個使用者對應的所有許可權

select u.name,m.name

from user u join u_r ur

on u.id=ur.uid

join r_m rm

on ur.rid=rm.rid

join module m

on rm.mid=m.id;

查詢劉德華的所有許可權

select m.name

from user u join u_r ur

on u.id=ur.uid

join r_m rm

on ur.rid=rm.rid

join module m

on rm.mid=m.id

where u.name='劉德華';

查詢擁有男瀏覽許可權的使用者都是誰

select u.name

from user u join u_r ur

on u.id=ur.uid

join r_m rm

on ur.rid=rm.rid

join module m

on rm.mid=m.id

where m.name='男瀏覽';

mysql資料庫入門電子 MySQL《資料庫入門》

資料庫入門 基礎知識 資料庫概述 資料庫是儲存資料資訊的中心,是乙個有組織的資料集合。資料庫最簡單的理解存放資料的倉庫 資料庫 database,db 是按照資料結構來組織 儲存和管理資料的倉庫,其本身可看作電子化的檔案櫃,使用者可以對檔案中的資料進行增加 刪除 修改 查詢等操作 資料庫系統由資料庫...

Mysql 資料庫入門

1 mysql資料庫服務的啟動與登入 mysql 伺服器啟動方式有兩種 通過服務的方式自動啟動 手動啟動的方式 1.1 windows 服務方式啟動 1.1.1 操作步驟 1.2 dos 命令方式啟動 1.2.1 操作步驟 1.3 控制台連線資料庫 mysql 是乙個需要賬戶名密碼登入的資料庫,登陸...

MySql資料庫入門

1.1外來鍵的作用 alter table school stu add constraint pk stu stuid primary key school stu stuid 外來鍵 外來鍵 在一張表中的某個字段引用的資料來自另一張表的某個欄位的資訊。主表 它的主鍵一般是需要被從表引用 從表 在...