2017-06-06 2 views
0
SELECT DISTINCT 
    'XXXXXXXXXXX', 
    APP_ID, 
    COND_ID, 
    GMTDATE, 
FROM TABLE_NAME 
WHERE COND_ID = 'XXXXXXXXXXXXXXXXX'; 

Die obige Abfrage enthält mehr als 100.000 Daten. Ich möchte ein einzelnes Zeilenergebnis, wo es mehrere Zeilen gibt, da es mehr als eine Sekunde dauert, um die Daten zu verarbeiten.Mehrfaches Zeilen- bis Einzelzeilen-Abfrageergebnis

AS Ergebnis ist: (zweireihig)

XXXXXXXXXXX APP_ID  COND_ID   GMTDATE 
XXXXXXXXXXX 11091000000 20170601010765 06-JUN-17 
XXXXXXXXXXX 11091000000 20170601010765 06-JUN-17 

gewünschte Ergebnis ist: (eine Zeile)

XXXXXXXXXXX APP_ID  COND_ID   GMTDATE 
XXXXXXXXXXX 11091000000 20170601010765 06-JUN-17 
+1

Ihre Beispieltabelle Daten schwer zu lesen. Können Sie Ihre Frage bearbeiten und klarer stellen? –

+0

Sie sollten diese zwei Zeilen nicht mit 'DISTINCT' bekommen, wenn die Daten in allen Spalten wirklich gleich sind. Ich bin mir nicht sicher, was ich hier noch sagen kann. –

+0

So wie DISTINCT verwendet wird, so sollte es eine Zeile Daten geben .. Tabelle hat riesige Daten .. So dauert es mehr als 2-3 Sekunden, um die Daten zu verarbeiten .. und So generiert es eine Zeile für jede Sekunde. Ich meine irgendwann 2 Reihe, irgendwann 3 Reihe. –

Antwort

0
SELECT DISTINCT 
'XXXXXXXXXXX', 
APP_ID, 
COND_ID, 
GMTDATE, 
FROM TABLE_NAME 
WHERE COND_ID = 'XXXXXXXXXXXXXXXXX' 
GROUP BY 1,2,3,4 ; --I have assumed 'XXXXXXXXXXX' is a column name 
+0

ja XXXXXXXXXXX ist Spaltenname .. Was GROUP BY 1, 2, 3, 4? Meinst du GROUP BY 'XXXXXXXXXXX', APP_ID, COND_ID, GMTDATE Es gibt immer noch das gleiche Ergebnis. –

+0

@ShaktiPravesh, die Verwendung von distinct ist redundant. Sie können es entfernen. und ich nehme auch an, dass Sie 'XXXXXXXXXXX' ohne die Anführungszeichen setzen (''). und ja, 1,2,3,4 bedeutet diese Spalten – PrinceKayastha

Verwandte Themen