habe ich die Daten, die diese Abfrage mit:zufällige Reihenfolge von in SQL Server
SELECT PT.ID AS ProductTypeId,
PT.ProductType,
PTPS.ID AS AssetId,
PTPS.Ordinal AS AssetOrdinal,
CASE
WHEN PTPS.LinkType = 2
THEN
--DS.ServerRootURL + 'Videos/ProductTypes/' +
--PTPSMaterialImage.LinkURL
(
SELECT TOP 1 LinkURL
FROM ProductTypesPblmSolutions
WHERE ProductTypeId = PT.ID
AND LinkType = 1
ORDER BY ID DESC
)
ELSE PTPS.LinkURL
END AS MaterialImage,
ATL.LinkType
FROM ProductTypes PT
INNER JOIN ProductTypesToApps PTA ON PT.ID = PTA.ProductTypeId
INNER JOIN ProductTypesPblmSolutions PTPS ON PTPS.ProductTypeId = PT.ID
INNER JOIN DealerSettings DS ON DS.DealerId = 23
INNER JOIN AttachmentLinkTypes ATL ON ATL.ID = PTPS.LinkType
WHERE PTA.AppId = 3
AND (PT.ID = 202 OR 202 IS NULL)
AND (ISNULL(PTPS.IsDeleted, 0) = 0)
ORDER BY PTPS.Ordinal
Lassen Sie sich über die materialimage
Spalt sprechen. Ich muss zwei verschiedene Bilder für dieses Produkt bekommen, aber jetzt bekomme ich das gleiche Produkt.
Es gibt viele Linkurls für dieses Produkt. Bitte beziehen Sie sich auf diese Abfrage und ihre Daten.
SELECT ProductTypeId,
linkurl,
linktype
FROM ProductTypesPblmSolutions
WHERE ProductTypeId = 202
AND linktype = 1
Das gleiche, was ich als Unterabfrage in meiner Haupt Abfrage verwendet
Wie kann ich in dieser Spalte unterschiedliche Bilder erhalten.
Ich versuchte mit TOP 1 ... ORDER BY NEWID()
, aber es funktioniert nicht.
Bitte vermeiden Sie irrelevante Tags. Finden Sie heraus, mit welcher Version von sql Server Sie arbeiten, und entfernen Sie alle anderen Versionstags. –
'ORDER BY NEWID()' ist die übliche Methode, um 'zufällige' Reihenfolge zu erhalten; zeige also ein kleines, testbares Beispiel, wie du es verwendest und wie es "nicht funktioniert" Dann bekommst du eher schnelle Hilfe –
Ich habe versucht entweder mit rand() oder newid() in Reihenfolge nach Klausel, aber ich habe nicht t verschiedene Bilder in meiner Hauptabfrage – StackUser