sql >> Databasteknik >  >> RDS >> Sqlserver

Få distinkta rader från ett resultat av JOIN i SQL Server

Du får dubbletter eftersom det finns flera foton per album. För att få en, använd row_number() :

SELECT Album_Name AS Album_Name, a.Album_Date AS Album_Date, a.Page_ID AS PageID,
       p.Image_ID AS Image_ID, p.Image_Small AS Image_Small 
FROM Album_Name a left outer JOIN
     (select p.*, row_number() over (partition by Album_Id order by Image_ID) as seqnum
      from Album_Photos p 
     ) p
    ON a.Album_ID = p.Album_ID and seqnum = 1;


  1. sql cross join - vilken användning har någon hittat för det?

  2. Tips och knep för implementering av databasrollbaserade åtkomstkontroller för MariaDB

  3. Kunde inte ansluta:Förlorade anslutningen till MySQL-servern vid "läsning av initialt kommunikationspaket", systemfel:0

  4. Skapa användare som bara kan SE en databas och bara välja från den?