Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie kann man NULL auswählen, wenn keine Daten vorhanden sind, und die Daten anzeigen, falls vorhanden?

Wenn die Tabelle leer ist (0 Zeilen), ist das Abfrageergebnis normalerweise =null.

Und Sie möchten Zeilendaten anzeigen, wenn Zeilen-ID x vorhanden ist, Sie sollten Spalte auswählen, nicht select NULL AS column , denn wenn Zeilendaten vorhanden sind, sind alle Spaltenwerte für immer null.

Ändern Sie also den Code in SQL, wählen Sie nicht null aus, und geben Sie, wenn das Abfrageergebnis leer ist, einen Standardsatz wie diesen zurück:

function get_data( $id )
{
    $query = "SELECT
            DATE_FORMAT(curdate(),'%d/%m-%Y') AS date_created,
            `name`,
            `address`,
            `status`
        FROM `t_penomoran`
        WHERE `nomor` = '{$id}'";

    $result = $this->db->query($query)->row();

    if ( empty($result) ) {
        $result = (object)[
            'date_created' => date('d/m-Y'),
            'name' => null,
            'address' => null,
            'status' => null,
        ];
    }

    return $result;
}