mysql记录相互关系查询_MySQL关系表查询两个表的数据
如下,有四張表:游戲類型表,游戲表,點卡和游戲關系表,點卡表
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记录相互关系查询_MySQL关系表查询两个表的数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MYSQL查询语句待优化_mysql语句
- 下一篇: mysql sql宽字节注入_sql注入