[WordPress] 参加する代替を左 WordPress のカスタム テーブルにはありますか?

スポンサーリンク

Question

ワードプレスのデータベースの 2 つのカスタム テーブルがある

table1:  
id | title | etc  

table2:  
id | table1_id | title | source | etc

完全に働くこの左結合をある:

select p.title as ptitle, e.id, e.title, e.source, e.etc
FROM table2 AS e
LEFT JOIN table1 AS p 
ON p.id = e.table1_id 
where e.table1_id = 1

を返しますこの:

ptitle1 | id1 |title1 | source1 | etc1
ptitle1 | id2 |title2 | source2 | etc2
ptitle1 | id3 |title3 | source3 | etc3

ptitle のそう多くの繰り返しを省略する方法はありますか?このようなもの:

ptitle1 | { (id1 |title1 | source1 | etc1), (id2 |title2 | source2 | etc2), (id3...) }
ptitle2 | { null }

答え

更新 v.2

を示す

object { ptitle, array( null ) }

状況 – あなたが必要なデータ列

new_col

また左結合順序の変更を反映するようにクエリを変更した:

select 
    p.title as ptitle, 
    CONCAT('object { ', p.title, ', array( ', IFNULL(GROUP_CONCAT(CONCAT('array(', e.id, ' | ', e.title, ' | ', e.source, ' | ', e.etc, ')') SEPARATOR ', '), 'null'), ' ) }') AS new_col
FROM 
    table1 AS p
    LEFT JOIN table2 AS e  
        ON p.id = e.table1_id 
where 
    p.id = 1
GROUP BY 
    p.title

あなたのコメントは、new_col を言い表す文字列ありを見いださなければならないあなたのため、適切なリターン オブジェクトこのテキスト パーサーを適用するのでこの形態でそれを必要ことと思った。このような場合より密接に状況を説明する必要がありますだと思う多分 exaample 使用ワードプレスのいくつかの種類の結果の特定の形態はこの必要があります正確な理由は何 api – 私は 100 % の確信はない

http://stackoverflow.com/questions/27714082/is-there-an-alternative-to-left-join-in-custom-tables-with-wordpress

スポンサーリンク

Leave a Reply