gpt4 book ai didi

php - 这 3 个查询可以组合成一个 MySQL 查询吗?

转载 作者:行者123 更新时间:2023-11-29 02:21:37 26 4
gpt4 key购买 nike

我有 3 个表(标签、标签、投资组合)

tags 有 2 个字段 -> tags_id(ai), tags_name

标签有 3 个字段 -> tag_id(ai), tag_oid​​(portfolio_id), tag_tid(tags_id)

portfolio 有很多字段 -> portfolio_id 等

我想匹配标记为“PD-02”的投资组合记录。我已经能够在三个单独的查询中执行此操作,并且一直在尝试将它们组合成一个查询。标签表包含标签名称/标题,然后标签表创建与标签名称到其他表的关系 - 如投资组合。

$tags = query_select(
"SELECT *
FROM tags
WHERE tags_name = 'PD-02'");

if (!empty($tags)) {
$related_portfolios = query_select(
"SELECT *
FROM tag
WHERE tag_tid = $tags[0]['tags_id']"
);

if (!empty($related_portfolios)) {
$portfolios = array();
foreach ($related_portfolios as $tkey => $tag) {
$portfolios[] = query_select("SELECT * FROM portfolio WHERE portfolio_id = $tag['tag_oid']");
}
}
}

最佳答案

你可以试试inner join:

select p.* 
from portfolio p
join tag t on p.portfolio_id = t.tag_oid
join tags ts on ts.tags_id = t.tag_tid
where ts.tags_name = 'PD-02'

关于php - 这 3 个查询可以组合成一个 MySQL 查询吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30875608/

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