Ok。すべてをもう少し明確にしましょう。
私がやろうとしていることは次のとおりです。
このようなテーブルがあります...
+---------+--------------------+------------------ ------+
| | ID | 名前 | 電子メール |
+---------+--------------------+------------------ ------+
| | 1 | カール | karl@email.com |
+---------+--------------------+------------------ ------+
| | 2 | フレッド | fred@email.com |
+---------+--------------------+------------------ ------+
| | 3 | クリストファー | chris@email.com |
+---------+--------------------+------------------ ------+
最終的に作成したいのは、次のような新しいテーブルです。
+-----+-------+---------------------+----- ------+--------------------+
| | ID | 名前1 | メール1 | 名前2 | メール2 |
+-----+-------+---------------------+----- ------+--------------------+
| | 1 | フレッド | fred@email.com | クリストファー | chris@email.com |
+-----+-------+---------------------+----- ------+--------------------+
| | 2 | クリストファー | chris@email.com | カール | karl@email.com |
+-----+-------+---------------------+----- ------+--------------------+
| | 3 | カール | karl@email.com | フレッド | fred@email.com |
+-----+-------+---------------------+----- ------+--------------------+
値は水平方向 (id[1].name1 != id[1].name2) および垂直方向 (id[1].name1 != id[2].name1) で一意です。
したがって、この出力は可能ではありません。
+-----+-------+---------------------+----- ------+--------------------+
| | ID | 名前1 | メール1 | 名前2 | メール2 |
+-----+-------+---------------------+----- ------+--------------------+
| | 1 | フレッド | fred@email.com | クリストファー | chris@email.com |
+-----+-------+---------------------+----- ------+--------------------+
| | 2 | フレッド | fred@email.com | カール | karl@email.com |
+-----+-------+---------------------+----- ------+--------------------+
| | 3 | カール | karl@email.com | カール | karl@email.com |
+-----+-------+---------------------+----- ------+--------------------+
どうすればこれを簡単に達成できますか?