Frage

Ich habe die folgende Abfrage, die gut funktioniert mit MySQL, aber sich weigert, zur Arbeit mit SQL server:

SELECT table1.someField AS theField, 
       COUNT(table2.someField) / (SELECT COUNT(someField) FROM table1 WHERE someField = theField),
FROM table1 LEFT JOIN table2 ON table1.someField = table2.someField

SQL Server scheint nicht, wie der alias der Unterabfrage.Ich habe gesagt, ich muss an einen CTE, aber ich habe es nie benutzt, bevor.Ist das richtig?

War es hilfreich?

Lösung

Das problem könnte gut sein, in der die Verwirrung in der sub-query

SELECT COUNT(someField) FROM table1 WHERE someField = theField

die someField im Zustand " local - aber Sie können table1.someField genau das gleiche.

Wie wäre

SELECT COUNT(t3.someField) FROM table1 t3 WHERE t3.someField = table1.someField 

?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top