2016-07-15 14 views
0

I 24 Zufalls Zeilen aus ganzen Tisch von Admin_Pic_Lib auswählen möchten, aber diese Abfrage Syntaxfehler geben,Wählen zufällige Zeilen aus Tabelle

SELECT top 24 CAST([Pictures] AS varbinary(Max)) FROM Admin_Pic_Lib ORDER BY NEWID() 

UNION ALL 

    SELECT CAST([Pictures] AS varbinary(Max)) FROM User_images WHERE UserName ='ahmed' 

Wenn ich ORDER BY NEWID() bin Trimmen es nur Top-24 Zeilen auswählen.

+2

AFAIK 'TOP' wird angewendet _after_' ORDER BY' passiert. Die obere Hälfte Ihrer "UNION" -Abfrage sollte also bereits 24 zufällige Zeilen enthalten. Können Sie näher erläutern, was Sie sehen und warum Sie glauben, dass ein Problem vorliegt? –

+0

Markieren Sie auch das relevante RDBMS, das Sie verwenden – TheGameiswar

Antwort

0

Bitte versuchen Sie den folgenden Code.

SELECT Pictures 
FROM 
    (SELECT TOP 24 CAST([Pictures] AS varbinary(Max)) AS Pictures 
    FROM Admin_Pic_Lib ORDER BY NEWID()) AS X 

UNION ALL 

    SELECT CAST([Pictures] AS varbinary(Max)) AS Pictures 
    FROM User_images 
    WHERE UserName ='ahmed'