KB2873474 – JAVÍTÁS: Az SQL Server 2012-ben futtatásakor az "A(z) '<Oszlopnév>' oszlop érvénytelen a kiválasztási listában, mert nem szerepel sem összesítő függvényben, sem a GROUP BY záradékban" hibaüzenet jelenik meg

Hatókör
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2012 Web

Tünetek

Vegyük például a következő esetet:

  • A számítógépen telepítve van a Microsoft SQL Server 2012.
  • Olyan lekérdezéssel rendelkezik, amely CASE utasítást tartalmaz a SELECT utasításban és egy CASE utasítást a GROUP BY utasításban.
  • A két CASE utasítás eredménye NULL.
  • Futtatja a lekérdezést.

Ebben az esetben a következő hibaüzenet jelenik meg:

Megjegyzés

Msg 8120, Level 16, State 1, Line 3

Az "<oszlopnév>" oszlop érvénytelen a kiválasztási listában, mert nem szerepel sem összesítő függvényben, sem a GROUP BY záradékban.

Futtathatja például a következő lekérdezést:adatbázis-teszt létrehozása
ugrás
Teszt használata
ugrás
Táblázat létrehozása tvt ( v1t binary(1) null)
Create table tln (ln numeric(5) not null)
ugrás
kiválasztás
eset
HA 1=2, akkor T1.Col1
Ellenkező esetben 10
végére,
eset
Ha T1.Col1 = 2, akkor T1.Col2
vége
from (
A T2.v1T kijelölése az 1. oszlopnak, a 10 oszlopnak a 2. oszlopnak
A TVT T2-ből
) T1
Csoportosítási szempont
eset
HA 1=2, akkor T1.Col1
Ellenkező esetben 10
végére,
eset
Ha T1.Col1 = 2, akkor T1.Col2
vége
ugrás A lekérdezésben a "ha 1=2, akkor t1.oszlop1, ellenkező esetben 10" utasítás 10-nek felel meg. Ez a probléma akkor jelentkezik, ha a "10" értéket NULL értékre cseréli.
Megjegyzés: Ez a probléma nem jelentkezik, ha eltávolítja bármelyik CASE utasítást a SELECT utasításból vagy a GROUP BY utasításból.

Megoldás

A javítás alkalmazása után engedélyeznie kell egy nyomkövetési jelzőt ahhoz, hogy a gyorsjavítás működjön. Ha telepítenie kell ezt a javítást, forduljon a Microsoft ügyfélszolgálatához.

A hibát először az SQL Server következő összegző frissítésében javítottuk.

6-os összegző frissítés a SQL Server 2012 SP1 verzióhoz /en-us/help/2874879

Az SQL Server összegző frissítéseinek ismertetése

Az SQL Server minden új összegző frissítése tartalmazza az összes gyorsjavítást és minden biztonsági javítást, amely az előző kumulatív frissítésben szerepelt. Tekintse meg az SQL Server legújabb összegző frissítéseit:

      

Állapot

A Microsoft megerősítette, hogy ez egy olyan probléma a Microsoft-termékekben, amely az „Érintett szolgáltatás“ című szakaszban van felsorolva.