簡體   English   中英

選擇所有項目cat_id = x或parent_id = x(父ID不同的表)

[英]Select all items Where cat_id= x or parent_id = x (Parent id different table)

嗨,因為標題說我有一個PHP代碼,我sucefully回應表中的文章,問題是在這個表中我只有cat_id parent_id在其他表中被引用..

"articulos" table

id | titulo | fecha_evento | descripcion | img | cat_id

"categoriablog" table

    id | parent_id 

這是我進行查詢的方式

$query1 = "SELECT id,titulo,fecha_evento,descripcion,img FROM articulos WHERE cat_id = 1";
    $result = mysql_query($query1);

我的目標是做這樣的事情,但“parent_id”在其他表中

$query1 = "SELECT id,titulo,fecha_evento,descripcion,img FROM articulos WHERE cat_id = 1 OR parent_id = 1";
        $result = mysql_query($query1);

JOIN兩個表:

SELECT 
  a.id, a.titulo, a.fecha_evento, a.descripcion, a.img 
FROM Article AS a 
INNER JOIN Category AS c ON a.cat_id = c.id
WHERE a.cat_id = x
   OR c.parent_id = x

您可以使用子查詢

SELECT id,titulo,fecha_evento,descripcion,img FROM Article
 WHERE cat_id = 1 OR cat_id IN
 (SELECT id from Category where parent_id=1)

編輯

請注意,這個解決方案比Mahmoud的答案中的JOIN解決方案慢一點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM