Bug 18611: [QA Follow-up] Make SQL query more readable
authorMarcel de Rooy <m.de.rooy@rijksmuseum.nl>
Fri, 26 May 2017 08:20:00 +0000 (10:20 +0200)
committerKyle M Hall <kyle@bywatersolutions.com>
Mon, 29 May 2017 02:23:34 +0000 (22:23 -0400)
Make it more explicit by adding join statements.

Test plan:
See next patch for adding a unit test.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
C4/ImportBatch.pm

index 4ac5618..1b598c7 100644 (file)
@@ -1059,7 +1059,12 @@ sub GetImportBatchRangeDesc {
 sub GetItemNumbersFromImportBatch {
     my ($batch_id) = @_;
     my $dbh = C4::Context->dbh;
-    my  $sth = $dbh->prepare("SELECT items.itemnumber FROM import_batches,import_records,import_items, items WHERE import_batches.import_batch_id=import_records.import_batch_id AND import_records.import_record_id=import_items.import_record_id AND items.itemnumber=import_items.itemnumber AND import_batches.import_batch_id=?");
+    my $sql = q|
+SELECT itemnumber FROM import_items
+INNER JOIN items USING (itemnumber)
+INNER JOIN import_records USING (import_record_id)
+WHERE import_batch_id = ?|;
+    my  $sth = $dbh->prepare( $sql );
     $sth->execute($batch_id);
     my @items ;
     while ( my ($itm) = $sth->fetchrow_array ) {