【发布时间】:2011-07-12 15:45:51
【问题描述】:
SELECT `invites`.`id`, `invites`.`from`, `invites`.`to`, `invites`.`group_id`
FROM `invites`
WHERE `invites`.`to` = '33'
它获取发送邀请的用户 ID 和被邀请用户的 ID。当然,还有他们互相邀请的组的 ID。我需要显示它们的用户名,但它们存储在另一个表中。团体也是如此。有关它们的信息存储在另一个表中。
我可以进行新的查询以从 ID 中获取该信息,但这值得吗?我可以只用一个查询吗?
编辑:
结构:
CREATE TABLE `users` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`surname` varchar(50) NOT NULL,
PRIMARY KEY (`id`),
);
CREATE TABLE `invites` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`group_id` int(10) unsigned NOT NULL,
`from` int(10) unsigned NOT NULL,
`to` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`)
);
CREATE TABLE `groups` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
);
【问题讨论】:
标签: mysql sql optimization query-optimization