Mysql
 sql >> Database >  >> RDS >> Mysql

Come selezionare NULL se non ci sono dati e visualizzare i dati se esistono?

Se la tabella è vuota (0 righe), il risultato della query =null è normalmente.

E vuoi mostrare i dati della riga quando esiste l'ID riga x, dovresti selezionare la colonna, non select NULL AS column , perché se i dati della riga esistono, tutto il valore della colonna è nullo per sempre.

Quindi, cambia il codice in SQL non seleziona null e quando il risultato della query è vuoto, restituisce un set predefinito, come questo:

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;
}