Heim > Backend-Entwicklung > PHP-Tutorial > Wie implementiert man die Unterabfragefilterung in CodeIgniter mithilfe von Active Record oder der Unterabfragebibliothek?

Wie implementiert man die Unterabfragefilterung in CodeIgniter mithilfe von Active Record oder der Unterabfragebibliothek?

Barbara Streisand
Freigeben: 2024-11-22 03:06:09
Original
763 Leute haben es durchsucht

How to Implement Subquery Filtering in CodeIgniter using Active Record or the Subquery Library?

Unterabfragefilterung in CodeIgniter: Ein Query Builder-Ansatz

Die vorliegende Aufgabe besteht darin, die folgende SQL-Abfrage in die aktive Datensatzsyntax von CodeIgniter zu übersetzen:

SELECT *
FROM certs
WHERE id NOT IN (SELECT id_cer FROM revokace);
Nach dem Login kopieren

Diese Abfrage ruft alle Zeilen aus der Tabelle „certs“ ab Die Spalte „id“ ist in der Unterabfrage, die „id_cer“ aus der Tabelle „revokace“ auswählt, nicht vorhanden.

Aktive Datensatzimplementierung

Der Abfrage-Builder von CodeIgniter bietet eine unkomplizierte Lösung Lösung:

$this->db->select('*')
         ->from('certs')
         ->where('`id` NOT IN (SELECT `id_cer` FROM `revokace`)', NULL, FALSE);
Nach dem Login kopieren

Die Methode „where()“ akzeptiert einen rohen SQL-String als erstes Argument, was uns dies ermöglicht Integrieren Sie die Unterabfrage direkt in die Hauptabfrage. Das zweite und dritte Argument (NULL und FALSE) verhindern, dass CodeIgniter der Unterabfrage entkommt, was andernfalls die Abfrage unterbrechen würde.

Subquery Library Extension

Alternativ können Sie die Verwendung von in Betracht ziehen Unterabfragebibliothek:

$this->db->select('*')
         ->from('certs')
         ->subquery('where_in', function($subquery) {
             $subquery->select('id_cer')
                      ->from('revokace');
         }, 'id', FALSE);
Nach dem Login kopieren

Diese Technik bietet eine präzisere und wiederverwendbarere Lösung für die Einbindung Unterabfragen in CodeIgniter-Abfragen.

Das obige ist der detaillierte Inhalt vonWie implementiert man die Unterabfragefilterung in CodeIgniter mithilfe von Active Record oder der Unterabfragebibliothek?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage