sql >> Database >  >> RDS >> Mysql

MySQL Selecteer specifieke kolom

Ervan uitgaande dat u niet alle kolommen wilt die worden geretourneerd met select * from ... , kunt u eenvoudig de gewenste kolommen expliciet vermelden:

select fname, lname from ...

Stel bijvoorbeeld dat u weet dat uw gebruikers-ID jbug01 is en u alleen het bijbehorende e-mailadres wilt:

select email
from   users
where  userid = 'jbug01'

Om dit binnen PHP te doen, kan het volgende codefragment helpen:

<?php
    $conn = mysql_connect ("localhost", "paxdiablo", "supersekritsauce");
    if (!$conn) {
        die ('Could not connect: ' . mysql_error());
    }
    mysql_select_db ("my_database", $conn);
    $result = mysql_query ("select email from users where userid = 'jbug01'");
    while ($row = mysql_fetch_array ($result)) {
        echo $row['email'] . "<br />";
    }
    mysql_close ($conn);
?>

Er zijn er weinig gevallen waarin * . wordt geselecteerd zinvol is (behalve tools die nodig nodig hebben) om alle kolommen te krijgen, zoals DB-viewers).

U moet er meestal de voorkeur aan geven expliciet te zijn met uw kolomselecties. Hierdoor kunt u problemen met schemawijzigingen veel eerder in het proces detecteren dan wanneer u blindelings alles selecteert.

Het zal er ook toe leiden dat er minder informatie wordt verzonden, wat misschien niet belangrijk is voor kleine databases of systemen waar alles op dezelfde box draait, maar het zal wel invloed hebben op de schaalbaarheid van uw systeem, zowel wat betreft de gegevensomvang als de distributie over een netwerk.



  1. Unicode-tekens (Grieks) worden in de database opgeslagen, zoals ??????

  2. MYSQL Fulltext zoeken en LIKE

  3. Ongeldige cast-uitzondering is niet behandeld MySQL

  4. Introductie van nieuwe functie:Always On-beschikbaarheidsgroep