-1

我有两张桌子。

一种是“ detailtousers ”包含有关用户的信息,任何“ commenttousers ”包含有关评论的信息。

按表detailtousers转储:

CREATE TABLE IF NOT EXISTS `detailtousers` (
  `idDetailToUsers` int(11) NOT NULL AUTO_INCREMENT,
  `DetailToUsersName` varchar(250) NOT NULL,
  `DetailToUsersEmail` varchar(60) DEFAULT NULL,
  `DetailToUsersPhone` varchar(150) DEFAULT NULL,
  `DetailToUsersExpirience` double DEFAULT NULL,
  `DetailToUsersCity` int(11) NOT NULL,
  `DetailToUsersCountry` int(11) NOT NULL,
  `DetailToUsersSite` varchar(45) DEFAULT NULL,
  `DetailToUsersAge` int(11) DEFAULT NULL,
  `DetailToUsersSex` int(11) NOT NULL,
  `DetailToUsersPhoto` varchar(150) DEFAULT NULL,
  `DetailToUsersToMF` int(11) DEFAULT NULL,
  `DetailToUsersFB` varchar(150) DEFAULT NULL,
  `DetailToUsersTW` varchar(150) DEFAULT NULL,
  `DetailToUsersYTB` varchar(150) DEFAULT NULL,
  `DetailToUsersVIP` int(11) DEFAULT '0',
  `DetailToUsersPalata` int(11) DEFAULT NULL,
  `DetailToUsersHide` int(11) DEFAULT NULL,
  PRIMARY KEY (`idDetailToUsers`),
  UNIQUE KEY `idDetailToUsers_UNIQUE` (`idDetailToUsers`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;

按表转储:commenttousers

CREATE TABLE IF NOT EXISTS `commenttousers` (
  `idCommentToUsers` int(11) NOT NULL AUTO_INCREMENT,
  `CommentToUsersTime` int(11) NOT NULL,
  `CommentToUsersIdUser` int(11) NOT NULL,
  `CommentToUsersComment` text NOT NULL,
  `CommentToUsersStatus` int(11) NOT NULL,
  `CommentToUsersIdToUser` int(11) DEFAULT NULL,
  PRIMARY KEY (`idCommentToUsers`),
  UNIQUE KEY `idCommentToUsers_UNIQUE` (`idCommentToUsers`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

我想选择所有评论并获取字段: DetailToUsersNameCommentToUsersCommentCommentToUsersIdToUserCommentToUsersIdUser、C*ommentToUsersTime*。

请注意,请到 CommentToUsersIdUser 字段 CommentToUsersIdToUser 字段 CommentToUsersIdToUser 我想获取留下评论的用户名,我必须再次连接表。

现在我正在尝试这样做:

SELECT `*s` FROM (`commenttousers`) LEFT JOIN `detailtousers` ON `detailtousers`.`idDetailToUsers` = `commenttousers`.`CommentToUsersIdToUser` LIMIT 5

所以,它给了我我需要的东西,但我无法获得关于哪个用户留下评论的信息。(她的名字来自 table detailtousers)请你帮我解决一下。

4

1 回答 1

1

如果我正确理解您的问题,您应该再次加入detailtousers表格以获取两个用户的详细信息。

SELECT a.*, /*select necessary fields from comments*/
b.DetailToUsersName, /*select necessary details about users*/
c.DetailToUsersName /*select necessary details about users*/
  FROM commenttousers a
       INNER JOIN detailtousers b
          ON b.idDetailToUsers = a.CommentToUsersIdToUser
       INNER JOIN detailtousers c
          ON c.idDetailToUsers = a.CommentToUsersIdUser
 LIMIT 5;
于 2013-08-03T02:02:05.100 回答