首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mysql连接问题

Mysql连接问题
EN

Stack Overflow用户
提问于 2022-10-02 19:21:07
回答 2查看 83关注 0票数 0

我的问题是:

代码语言:javascript
复制
SELECT * 
FROM outlets 
INNER JOIN users ON outlets.owner=users.id;

结果是一个数组,其中一个表的索引与另一个表的索引匹配。是否有可能以某种方式提出这样的请求: owner = array,并且已经有了一个结构结果:

代码语言:javascript
复制
Array ( [id] => 1 [owner] => 1 [name] => Рома [email] => admin [username] => admin [password] => admin [role] => 1 [photo] => [permissions] => {"menu": {"menu.shop": 1, "menu.users": 1, "menu.stocks": 1, "menu.clients": 1, "menu.finances": 1, "menu.partners": 1, "menu.products": 1, "menu.purchase": 1, "menu.dashboard": 1}} [status] => 1 )
EN

回答 2

Stack Overflow用户

发布于 2022-10-02 22:03:29

若要将结果作为关联数组返回,请使用

票数 0
EN

Stack Overflow用户

发布于 2022-10-02 22:10:53

如果我理解正确的话。您希望有一个所有者,其中包含用户的数据(但不具有相同级别的数据)。

选项1:通过,您可以执行两个单独的查询并手动连接结果。但你可能会受到表现上的惩罚。

选项2:作为一项建议,如果您需要这样的有效负载,只需按需要手动重新格式化数组,如下所示:

代码语言:javascript
复制
$originalArray = ['id' => 1, 'owner' => 1, 'name' => 'test', 'username' => 'test'];

$reformatedArray = [];
foreach($originalArray as $values){
    $reformatedArray['id'] = $values['id'];
    $reformatedArray['owner']['name'] = $values['name'];
    $reformatedArray['owner']['name'] = $values['username'];
    // ...
}

print_r($reformatedArray);

// ['id' => 1, 'owner' => ['name' => 'test', 'username' => 'test']]

希望能帮上忙。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73928683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档