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

MYSQL INNER JOIN med mulige tomme felter

For at beholde rækkerne fra galeries uden matchende ID på billeder, skal du deltage i billeder i gallerier med LEFT JOIN i stedet for INNER JOIN :

SELECT galeries_id, galeries_title, 
       photos.photos_id, photos.photos_gal_id, photos.photos_link 
FROM galeries 
LEFT JOIN photos 
ON galeries.galeries_id=photos.photos_gal_id 
GROUP BY photos_gal_id

Dette vil give dig:

galeries_id      galeries_title       photos_id       photos_link
     1               blabla              3            test.jpg
     2               bla bla2            NULL         NULL                
     3               etata               5            test.jpg

Og hvis du ønsker at erstatte NULL med en tom streng, kan du bruge:

SELECT
  IFNULL(photos.photos_id, ''),
  IFNULL(photos.photos_link, '')


  1. MySql i DNX 5.0

  2. Sådan laver du en batch-indsættelse i MySQL

  3. Ubesvarede spørgsmål om MS SQL Server-sikkerhed og adgangskontrol

  4. Ny MariaDB AX-udgivelse med MariaDB ColumnStore 1.1.3 GA