![](/img/trans.png)
[英]In MySQL having issues while fetching data from two tables via performing joining on JSON column
[英]Facing issues while fetching data from two different mysql tables using a single query..!
我有兩個表,一個用於發布,另一個用於用戶。 我正在從“帖子”表中獲取所有帖子,並從tbl_users中獲取用戶數據(誰發布了該帖子)。
目前,我正在使用此查詢:
$query = $pdo->prepare("SELECT * FROM `posts`,`tbl_users` WHERE id = user_id_p ORDER BY `post_id` DESC");
$query->execute();
return $query->fetchAll();
它工作正常,正在從posts表中獲取所有帖子,並從tbl_users中獲取用戶數據。 但是,我的問題是我不想提取所有帖子,但是我只想提取特定用戶(例如僅John)發布的那些帖子以及僅從tbl_user獲取John的用戶數據。
(來自tbl_users的字段ID和來自表帖子的user_id_p字段在兩個表中都是相同的。)
有什么建議或幫助嗎?
盡管您的查詢有效 ,但由於使用隱式交叉聯接會導致非常大的結果集,因此它根本沒有效率。
使用適當的INNER JOIN並在WHERE
施加條件:
SELECT u.*, p.*
FROM tbl_users u INNER JOIN posts p
ON u.id = p.user_id_p
WHERE u.id = ?
ORDER BY p.post_id DESC
更換?
與用戶的ID。
您可以為此使用JOIN
。 例
select P.name, U.name from post P NATURAL JOIN user U;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.