gpt4 book ai didi

mysql - 更好地理解查询中的 MySQL 大写字母

转载 作者:行者123 更新时间:2023-11-29 04:09:23 26 4
gpt4 key购买 nike

总的来说,我是 PDO 和 MySQL 的新手。我正在从即将弃用的 MySQL 切换到 PDO,我有一些问题想更好地了解 MySQL 查询的工作原理。

我目前有这个功能,我不明白表格行前的大写U.&M.的意思。

M. 是否连接到 $morequery = ""; & U. 到更新功能?

public function Updates( $_iD, $lastid ){
$morequery = " "; // More Button
$data = " ";

if( $lastid )
$morequery = "AND M.post_iD < '".$lastid."' "; // More Button End
$query = mysql_query("SELECT M.post_iD, M.uid_fk, M.message, M.created, U._iUsername,M.uploads FROM Posts M, users U WHERE U._iStatus='1' AND M.uid_fk=U._iD and M.uid_fk='$_iD' $morequery order by M.post_iD desc limit" .$this->perpage) or die(mysql_error());
while($row = mysql_fetch_array($query))
$data[] = $row;
return $data;
}

最佳答案

这与 PHP 或 PDO 无关,仅与 MySQL 有关。 UM 是在 FROM 子句中创建的表别名:

FROM Posts M, users U

这意味着在整个查询中,M 是对该Posts 表的引用。您可以指定要选择的列的表(如果没有别名,Posts.post_ID 会起作用)。

当您查询的两个表具有相同的列名时,这是必需的。例如,M.uid_fkU.uid_fk 之间可能存在歧义。如果没有歧义,则没有必要,可以只是为了清楚起见。

在同一张表上连接两次可能会产生这种歧义。在那种情况下,无论如何至少需要一个别名,因为表本身变得不明确。

关于mysql - 更好地理解查询中的 MySQL 大写字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16844415/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com