gpt4 book ai didi

php - PDO 多个内部联接似乎是循环的

转载 作者:行者123 更新时间:2023-11-29 11:28:53 24 4
gpt4 key购买 nike

我第一次使用INNER JOIN,我有点困惑。

我有 3 张 table :

dog
client
dogclient

我正在尝试从 clientdog 表中获取 dogclient 表中每条记录的信息。当我这样做时,结果是这样的:

[{"ID":"1","Name":"Sparky","Forename":"Jamie","Surname":"McAllister"},
{"ID":"1","Name":"Sparky","Forename":"Jamie","Surname":"McAllister"},
{"ID":"2","Name":"Scruff","Forename":"Jamie","Surname":"McAllister"},
{"ID":"2","Name":"Scruff","Forename":"Jamie","Surname":"McAllister"}]

我用来进行此查询的函数是:

function getAll(){

$conn = self::connect();

$stmt = $conn->prepare("SELECT dog.ID, dog.Name, client.Forename, client.Surname FROM dogclient INNER JOIN client ON dogClient.ClientID INNER JOIN dog ON dogclient.DogID");
$stmt->execute();

// set the resulting array to associative
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
$response = $stmt->fetchAll();

return $response;

谁能看出我哪里出了问题吗?

或者,有人知道更好的方法吗?

如果有帮助的话,dog 表中只有 2 条狗,client 表中只有 1 个客户端,dogclient 中有 2 条记录> 表,所以我期待 2 个结果

最佳答案

试试这个:

INNER JOIN client ON dogClient.ClientID = client.ClientID INNER JOIN dog ON dogclient.DogID = dog.DogID

关于php - PDO 多个内部联接似乎是循环的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37748772/

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