我正在使用一个名为“login”的MySQL表,其结构如下所示。表结构下面的代码使用从“登录”表中提取的数据。
对于大约两个月前创建的某些登录名,代码回应变量“网站”很好,没问题。对于我最近创建的loginids,代码不会回显变量“website”。我甚至尝试过为“网站”提供更新和更高版本的登录ID,并且问题仍然存在。 知道为什么会这样吗?
提前致谢,
约翰
`login` (
`loginid` int(11) unsigned NOT NULL auto_increment,
`username` varchar(30) NOT NULL,
`password` varchar(50) NOT NULL,
`email` varchar(255) NOT NULL,
`actcode` varchar(45) NOT NULL,
`disabled` tinyint(1) NOT NULL default '0',
`activated` tinyint(1) NOT NULL default '0',
`created` timestamp NOT NULL default CURRENT_TIMESTAMP,
`points` bigint(9) NOT NULL,
`website` varchar(1000) NOT NULL,
`location` varchar(1000) NOT NULL,
`age` int(11) NOT NULL,
`gender` varchar(1000) NOT NULL,
PRIMARY KEY (`loginid`)
)
编辑:这是完整的查询:
$sqlStrw = "SELECT l.username, l.loginid, l.website, c.loginid, c.commentid, c.submissionid, c.comment, c.datecommented, l.created, count(c.commentid) countComments
FROM comment AS c
INNER JOIN login AS l
ON c.loginid = l.loginid
WHERE l.username = '$profile'";
$resultw = mysql_query($sqlStrw);
$arrw = array();
echo "<table class=\"samplesrecw\">";
while ($roww = mysql_fetch_array($resultw)) {
echo '<tr>';
echo '<td class="sitename5">Website: <a href="http://www.'.$roww["website"].'" TARGET="_blank">'.$roww["website"].'</a></td>';
echo '</tr>';
}
echo "</table>";
答案 0 :(得分:0)
inner join
只会返回login
中与loginid
匹配comment
的行。你可能想要一个''右外'加入。