ネットワーク ノード マッピング プログラムで使用するために、MySql テーブルを再フォーマットしたいと考えています。元の形式は次のとおりです。
| ID | story | org | scribe |
そして、すべての組織名を次のような 2 つの出力テーブルにプルしたいと思います。
| org1 | org2 | scribe | weight of connection |
org1 と org2 は両方とも、元のテーブルの同じフィールドから取得され、1 つ以上のスクライブを共有することによって相互に関連付けられています。すべてのスクライブには一意の ID があります。もちろん、重複したエントリは必要ありません。
私がこれまでにできることは、次のように、組織の '%text%' 検索を実行し、その組織を出力から除外することによって、リスト内のいずれかの組織に接続されているすべての組織を取得することです。
SELECT 'tabitha' as org1,
org as org2,
teller as scribe_id,
count(teller) as weight
FROM `stories`
WHERE teller in
(
(SELECT
teller
FROM `stories`
WHERE org like '%tabitha%'
group by teller)
)
and org not like '%tabitha%'
group by teller, org
そのため、自己結合またはそれが機能するケースについていくつかのトリックがあるように感じますが、まだ何も見つけていません。