Sebagai PaulF
ditunjukkan, Anda perlu menggunakan JOIN atau sub-kueri untuk mengambil nama ayah dari tabel yang sama.
Saya berasumsi Anda menggunakan ssp.class.php untuk memproses data Anda di sisi server berdasarkan contoh yang telah Anda sebutkan.
Kelas ssp.class.php tidak mendukung gabungan dan sub-kueri, tetapi ada solusinya. Caranya adalah dengan menggunakan sub-query seperti yang ditunjukkan di bawah ini di $table definisi. Ganti table dengan nama tabel Anda yang sebenarnya di sub-kueri.
$table = <<<EOT
(
SELECT
a.id,
a.name,
a.father_id,
b.name AS father_name
FROM table a
LEFT JOIN table b ON a.father_id = b.id
) temp
EOT;
$primaryKey = 'id';
$columns = array(
array( 'db' => 'id', 'dt' => 0 ),
array( 'db' => 'name', 'dt' => 1 ),
array( 'db' => 'father_id', 'dt' => 2 ),
array( 'db' => 'father_name', 'dt' => 3 )
);
$sql_details = array(
'user' => '',
'pass' => '',
'db' => '',
'host' => ''
);
require( 'ssp.class.php' );
echo json_encode(
SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns )
);
Anda juga perlu mengedit ssp.class.php dan ganti semua instance FROM `$table` dengan FROM $table untuk menghapus backtick.
Pastikan semua nama kolom unik jika tidak gunakan AS untuk menetapkan alias.
CATATAN
Ada juga github.com/emran/ssp
repositori yang berisi ssp.class.php enhanced yang disempurnakan mendukung GABUNG.
LINK
Lihat jQuery DataTables:Menggunakan WHERE, JOIN dan GROUP BY dengan ssp.class.php untuk informasi lebih lanjut.