public function describeIndexSql($tableName, $config)
{
$sql = "SELECT\n c2.relname,\n a.attname,\n i.indisprimary,\n i.indisunique\n FROM pg_catalog.pg_namespace n\n INNER JOIN pg_catalog.pg_class c ON (n.oid = c.relnamespace)\n INNER JOIN pg_catalog.pg_index i ON (c.oid = i.indrelid)\n INNER JOIN pg_catalog.pg_class c2 ON (c2.oid = i.indexrelid)\n INNER JOIN pg_catalog.pg_attribute a ON (a.attrelid = c.oid AND i.indrelid::regclass = a.attrelid::regclass)\n WHERE n.nspname = ?\n AND a.attnum = ANY(i.indkey)\n AND c.relname = ?\n ORDER BY i.indisprimary DESC, i.indisunique DESC, c.relname, a.attnum";
$schema = 'public';
if (!empty($config['schema'])) {
$schema = $config['schema'];
}
return [$sql, [$schema, $tableName]];
}