GlitterMedlem sedan juli 2003465 inlägg Hej
Försöker slumpa ut poster med förljande
SELECT top 5 * FROM tabell ORDER BY NEWID()
men då kan jag få ut 2 lika poster vilket jag inte vill...
testade med
SELECT DISTINCT id FROM tabell ORDER BY NEWID()
men får felmedelandet:
ORDER BY items must appear in the select list if SELECT DISTINCT is specified.
hur gör jag då ?
kan man kombinera top och DISTINCT ?
hur isåfall ?
Jag kör SQL Server 2000
@ndersMedlem sedan juni 200032 969 inlägg Ja, det är klart du kan kombinera TOP och DISTINCT. Däremot är det som det står i felmeddelandet; om du använder DISTINCT måste du även ha med alla fält i ORDER BY i din SELECT.
GlitterMedlem sedan juli 2003465 inlägg Kom på att det blir la aldrig samma post 2 ggr?
@ndersMedlem sedan juni 200032 969 inlägg Nej, det borde det ju inte bli (om du inte har väldigt få poster förstås). Blir det det?
Om inte; vad är problemet?
GlitterMedlem sedan juli 2003465 inlägg Om den inte blir 2 av samma så är det inga problem...
men jag tänkte för att förebygga så skulle man kuna köra med distinct men det går ju inte eftersom man kan ju inte ange newid i selecten eller ?
LarsGMedlem sedan dec. 200012 464 inlägg select top 5 id
from (select distinct id from tabell)
order by newid()
GlitterMedlem sedan juli 2003465 inlägg Okey tackar
kul att lära sig något nytt :)
föresten blir det inte tvärt om
select distinct id
from (select top 5 id from tabell order by newid())
för då hämtar den ut 5 slumpade och sedan kollar den så det inte är flera av samma ?
id är unikt.
LarsGMedlem sedan dec. 200012 464 inlägg I ditt fall kan du få färre än 5 poster.
GlitterMedlem sedan juli 2003465 inlägg Jo jag vet men annars så blir det ju inte rätt för då kan det ändå bli dubletter...
ja ja det fixar sig nog.
tack för hjälpen
LarsGMedlem sedan dec. 200012 464 inlägg Det kan inte bli dubletter med den kod jag skrev.