Query Optimization: Select only needed columns instead of SELECT * on looped queries

This commit is contained in:
johnnyq
2026-08-06 12:59:43 -04:00
parent 77defcf7d8
commit b8c9d5b4cf
117 changed files with 345 additions and 227 deletions

View File

@@ -62,7 +62,7 @@ ob_start();
<option value="">- Select a Client -</option>
<?php
$sql = mysqli_query($mysqli, "SELECT * FROM clients WHERE client_lead = 0 AND client_archived_at IS NULL " . clientScopeSql('clients.client_id') . " ORDER BY client_name ASC");
$sql = mysqli_query($mysqli, "SELECT client_id, client_name FROM clients WHERE client_lead = 0 AND client_archived_at IS NULL " . clientScopeSql('clients.client_id') . " ORDER BY client_name ASC");
while ($row = mysqli_fetch_assoc($sql)) {
$client_id_select = intval($row['client_id']);
$client_name = escapeHtml($row['client_name']); ?>

View File

@@ -12,7 +12,7 @@ if (!empty($ticket_ids)) {
$whereNotIn = "AND ticket_id NOT IN ($ids)";
}
$sql_merge = mysqli_query($mysqli, "SELECT * FROM tickets
$sql_merge = mysqli_query($mysqli, "SELECT client_name, ticket_id, ticket_number, ticket_prefix, ticket_status_name, ticket_subject FROM tickets
LEFT JOIN ticket_statuses ON ticket_status = ticket_status_id
LEFT JOIN clients ON client_id = ticket_client_id
WHERE ticket_closed_at IS NULL

View File

@@ -81,7 +81,8 @@ $row = mysqli_fetch_assoc($ticket_total_reply_time);
$ticket_total_reply_time = escapeHtml($row['ticket_total_reply_time']);
$ticket_total_reply_time_display = formatDuration($ticket_total_reply_time);
$sql_invoices = mysqli_query($mysqli, "SELECT * FROM invoices WHERE invoice_status LIKE 'Draft' AND invoice_client_id = $client_id ORDER BY invoice_number ASC");
$sql_invoices = mysqli_query($mysqli, "SELECT invoice_amount, invoice_date, invoice_due, invoice_id, invoice_number, invoice_prefix,
invoice_scope, invoice_status FROM invoices WHERE invoice_status LIKE 'Draft' AND invoice_client_id = $client_id ORDER BY invoice_number ASC");
ob_start();

View File

@@ -22,7 +22,7 @@ if ($client_id) {
enforceClientAccess();
}
$sql_merge = mysqli_query($mysqli, "SELECT * FROM tickets
$sql_merge = mysqli_query($mysqli, "SELECT client_name, ticket_id, ticket_number, ticket_prefix, ticket_status_name, ticket_subject FROM tickets
LEFT JOIN ticket_statuses ON ticket_status = ticket_status_id
LEFT JOIN clients ON client_id = ticket_client_id
WHERE ticket_closed_at IS NULL