我使用一个非常简单的数据表服务器端脚本。
<?php
/*
* DataTables example server-side processing script.
*
* Please note that this script is intentionally extremely simply to show how
* server-side processing can be implemented, and probably shouldn't be used as
* the basis for a large complex system. It is suitable for simple use cases as
* for learning.
*
* See http://datatables.net/usage/server-side for full details on the server-
* side processing requirements of DataTables.
*
* @license MIT - http://datatables.net/license_mit
*/
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Easy set variables
*/
// DB table to use
$table = 'customer';
// Table's primary key
$primaryKey = 'id';
// Array of database columns which should be read and sent back to DataTables.
// The `db` parameter represents the column name in the database, while the `dt`
// parameter represents the DataTables column identifier. In this case simple
// indexes
$columns = array(
array( 'db' => 'id', 'dt' => 0 ),
array( 'db' => 'name', 'dt' => 1 ),
array( 'db' => 'mail', 'dt' => 2 ),
array( 'db' => 'pass', 'dt' => 3 ),
array( 'db' => 'phone', 'dt' => 4 ),
array( 'db' => 'lastname', 'dt' => 5 )
);
// SQL server connection information
$sql_details = array(
'user' => 'root',
'pass' => '******',
'db' => 'base1',
'host' => 'localhost'
);
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* If you just want to use the basic configuration for DataTables with PHP
* server-side, there is no need to edit below this line.
*/
require( 'ssp.class.php' );
echo json_encode(
SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns )
);
我只想从其他表中添加带有子查询的列。像这样:
array( 'db' => 'number_society', 'dt' => 6 , 'fn'=>'select count(*) from
society where id_customer=primary_key' )
我在网络上发现了非常复杂的代码,但这并不是那么复杂。对于每一行,我必须计算其他表中的行数,其中第二个表中的“ id_customer”值=第一个表中的id。
最佳答案
您可以这样编写SQL查询:
SELECT c.*,
(select count(*) from society as s where s.id_customer = c.primary_key) as numItems
from customer as c
关于php - 数据表服务器处理SELECT COUNT,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39215130/