MySQL關係表查詢兩個表的資料

2022-02-17 04:03:58 字數 1628 閱讀 2338

如下,有四張表:遊戲型別表,遊戲表,點卡和遊戲關係表,點卡表

create table `gamestype`(

`tid` int auto_increment not null primary key comment'遊戲型別編號',

`tname` varchar(10) not null comment'遊戲型別名稱'

)engine=innodb default charset=utf8 comment='遊戲型別表';

create table `games`(

`gid` int auto_increment not null primary key comment'遊戲編號',

`gname` varchar(10) not null comment'遊戲名稱',

`tid` int not null comment'所屬遊戲型別'

)engine=innodb default charset=utf8 comment='遊戲表';

create table `gameorcard`(

`id` int auto_increment not null primary key comment'編號',

`cid` int not null comment'點卡編號',

`gid` int not null comment'支援支付遊戲編號'

)engine=innodb default charset=utf8 comment='點卡和遊戲關係表';

create table `cards`(

`cid` int auto_increment not null primary key comment'點卡編號',

`cname` varchar(20) not null comment'點卡名稱',

`titleimg` varchar(20) not null comment'點卡圖示',

`iniprice` double not null comment'原**',

`price` double not null comment'售價',

`cinfo` varchar(200) not null comment'點卡介紹',

`praiserate` double not null comment'好評率',

`uptime` timestamp not null comment'上架時間',

`isshelves` int(1) not null comment'上架狀態0上架1下架',

`number` int not null comment'數量'

)engine=innodb default charset=utf8 comment='點卡表';

上述已經建立好了主外來鍵關係。

要查詢「遊戲型別為網路遊戲的遊戲資訊及其支援該遊戲充值得點卡資訊,並且該點卡為上架狀態」

select c.*,g.* from `cards` as c join `gameorcard` as ga on c.cid=ga.cid join `games` as g on g.`gid`=ga.`gid` where `tid`=1 and c.isshelves=0 order by g.gid;

mysql朋友表設計 設計朋友關係表的兩個方案

需求 使用者a新增使用者b為好友後,a和b即互為好友。這裡只考慮使用資料庫實現的方案,以mysql為例。存在使用者表 users,有欄位 user id,如何設計朋友關係表?create table users id int 11 unsigned not null auto increment,u...

兩個MYSQL表關聯查詢

高階sql語句inner join 非常實用 在接觸這個語句之前 我要到資料庫查詢不同表的 內容我一般需要執行2次sql語句 迴圈2次。而現在有了這個語句 可以簡化成只執行1次語句 迴圈一次 result mysql query select states.state id,states.state...

兩個MYSQL表關聯查詢

高階sql語句inner join 非常實用 在接觸這個語句之前 我要到資料庫查詢不同表的 內容我一般需要執行2次sql語句 迴圈2次。而現在有了這個語句 可以簡化成只執行1次語句 迴圈一次 result mysql query select states.state id,states.state...