gpt4 book ai didi

php - 返回 php 中的列,其中列与请求的列不同

转载 作者:行者123 更新时间:2023-11-29 13:58:17 25 4
gpt4 key购买 nike

我有这个查询:

function find_Friends($UserID){
$mysqli = new mysqli(DB_SERVER, DB_USER, DB_PASSWORD, DB_NAME);
if (!$mysqli) {
die('There was a problem connecting to the database.');
}
$query="SELECT * FROM Friends WHERE UserID = '$UserID' OR FriendID = '$UserID'";
$result = $mysqli->query($query);
//List all relevant
while($row = $result->fetch_row()) {
//Do logic
}
$mysqli->close();
}

所以假设查询是这样的:

SELECT * FROM Friends WHERE UserID = '123' OR FriendID = '123'

我的查询返回以下内容:

UserID | FriendID
123 | 456

我的问题是,如何在 php 中返回 FriendID 456?我基本上只想返回不是查询数字的列,在本例中为 123。

因此,如果我正在寻找 8434 并且我得到的返回是:

UserID | FriendID
2356 | 8434

我想返回 UserID,而不是 FriendID,但在原始查询中我想返回 FriendID。

我如何在 php/mysql 中执行此操作?

最佳答案

如果您只关心数字而不关心它是哪一列,则可以将查询更改为:

SELECT IF(UserID='123',FriendID,UserID) AS Number FROM Friends WHERE UserID = '123' OR FriendID = '123'

或者,如果您确实关心它是哪一个,则按原样保留查询字符串并应用此 PHP:

while ($row = $result->fetch_row()) {
if ($row['UserID'] == $UserID) {
echo "Friend ID: " . $row['FriendID'];
} else {
echo "User ID: " . $row['UserID'];
}
}

关于php - 返回 php 中的列,其中列与请求的列不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15469491/

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