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

Hvordan vælger man NULL, hvis der ikke er nogen data, og viser dataene, hvis de findes?

Hvis tabellen er tom (0 rækker), er forespørgselsresultatet =null normalt.

Og du vil vise rækkedata, når række-id x eksisterer, skal du vælge kolonne, ikke select NULL AS column , fordi hvis rækkedata findes, er alle kolonneværdier null for evigt.

Så skift kode til SQL, vælg ikke null, og når forespørgselsresultatet er tomt, returner et standardsæt som dette:

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


  1. Oracle rekursiv forespørgsel - datoer

  2. Hvad er det korrekte navn for en tilknytningstabel (et mange-til-mange forhold)

  3. Fordi du skal kende PowerShell

  4. Fortsæt med at forbinde to tabeller, som ikke er tilknyttet