Chinaunix
标题:
新手关于SELECT 语句的写法
[打印本页]
作者:
jiangling_0103
时间:
2016-06-07 13:53
标题:
新手关于SELECT 语句的写法
新手刚开始学习 mysql , 想问下下面的 select 语句应该怎么写的? 多谢了
如下有2张表 bugs 和 profiles , 其中 bugs 中的 assigned_to 和 reporter 外键指向 profiles 表的 userid 主键:
CREATE TABLE `bugs` (
`bug_id` mediumint(9) NOT NULL AUTO_INCREMENT,
`assigned_to` mediumint(9) NOT NULL,
`short_desc` varchar(255) NOT NULL,
`reporter` mediumint(9) NOT NULL,
PRIMARY KEY (`bug_id`),
KEY `bugs_assigned_to_idx` (`assigned_to`),
KEY `bugs_reporter_idx` (`reporter`),
CONSTRAINT `fk_bugs_assigned_to_profiles_userid` FOREIGN KEY (`assigned_to`) REFERENCES `profiles` (`userid`) ON UPDATE CASCADE,
CONSTRAINT `fk_bugs_reporter_profiles_userid` FOREIGN KEY (`reporter`) REFERENCES `profiles` (`userid`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=570183 DEFAULT CHARSET=utf8;
CREATE TABLE `profiles` (
`userid` mediumint(9) NOT NULL AUTO_INCREMENT,
`login_name` varchar(255) NOT NULL,
PRIMARY KEY (`userid`),
UNIQUE KEY `profiles_login_name_idx` (`login_name`),
) ENGINE=InnoDB AUTO_INCREMENT=11226 DEFAULT CHARSET=utf8;
我现在想写一个select语句,获取指定 bug_id 的记录对应的 bug_id , assigned_to , short_desc ,reporter 值,但是assigned_to和reporter想取profiles表中对应 bug_id的用户全名,我应该怎么写的?
我这样写的话可以获取assigned_to对应的用户名
select t1.bug_id,t1.short_desc,t2.login_name from bugs t1 , profiles t2 where t1.bug_id = xxxxxx and t1.assigned_to=t2.userid
如果我要同时获取 assigned_to 和 reporter 对应的用户名应该怎么写啊?
作者:
seesea2517
时间:
2016-06-20 11:18
回复
1#
jiangling_0103
两次连接呗,再连一个 profiles t3 嘛,一样操作。
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2