sql >> Database teknologi >  >> RDS >> Sqlserver

Hvordan kan jeg VÆLGE flere kolonner i en CASE WHEN på SQL Server?

Problemet er, at CASE statement vil ikke fungere på den måde, du prøver at bruge det. Du kan kun bruge det til at ændre værdien af ​​ét felt i en forespørgsel. Hvis jeg forstår, hvad du prøver at gøre, har du muligvis brug for dette:

SELECT 
   ActivityID,
   FieldName = CASE 
                  WHEN ActivityTypeID <> 2 THEN
                      (Some Aggregate Sub Query)
                  ELSE
                     (Some Aggregate Sub Query with diff result)
               END,
   FieldName2 = CASE
                  WHEN ActivityTypeID <> 2 THEN
                      (Some Aggregate Sub Query)
                  ELSE
                     (Some Aggregate Sub Query with diff result)
               END


  1. Hvordan bruger jeg den aktuelle dato i en HQL-forespørgsel med en Oracle-database?

  2. Tilføjelse af flere kolonner EFTER en specifik kolonne i MySQL

  3. hvordan man genopretter standby-database fra en manglende arkivlog

  4. Problemer med sammenligning af MySQL flydende komma