Avatar billede frederik_kromann Nybegynder
30. januar 2008 - 05:38 Der er 13 kommentarer og
1 løsning

beregningsfelt IF

har brug for følgende:
SELECT CUSTINVOICEJOUR.CUSTGROUP, month(invoicedate) AS 'Month', Year(invoicedate) AS 'Year', CUSTINVOICEJOUR.SALESBALANCEMST, CUSTINVOICEJOUR.DATAAREAID,
FROM axdb_sp4.dbo.CUSTINVOICEJOUR CUSTINVOICEJOUR
WHERE (Year(invoicedate)=2007) AND (CUSTINVOICEJOUR.INVOICEID<>'')

Vil gerne have at feltet custinvoicejour.salesbalancemst bliver ganget med f.eks. ,8 hvis dataareaid='SE' feltet skal hedde SalgDKK.
Avatar billede frederik_kromann Nybegynder
30. januar 2008 - 05:39 #1
skal siges at det er MS query fra excel jeg bruger.
Avatar billede arne_v Ekspert
30. januar 2008 - 15:26 #2
SQLServer bruger ikke IF/IIF men CASE WHEN.

http://msdn2.microsoft.com/en-us/library/ms181765.aspx har eksempler.
Avatar billede frederik_kromann Nybegynder
30. januar 2008 - 18:47 #3
ok men hvor kommer jeg case when ind i min ms query?
Avatar billede arne_v Ekspert
31. januar 2008 - 02:52 #4
I din SQL.
Avatar billede Syska Mester
31. januar 2008 - 04:16 #5
"Vil gerne have at feltet custinvoicejour.salesbalancemst bliver ganget med f.eks. ,8 hvis dataareaid='SE' feltet skal hedde SalgDKK."

Den sætning er jeg ikke helt med på ....

... så kan du jo rette den lidt til som du vil have den ...

USE AdventureWorks;
GO
SELECT  ProductNumber, Category =
      CASE ProductLine
        WHEN 'R' THEN 'Road'
        WHEN 'M' THEN 'Mountain'
        WHEN 'T' THEN 'Touring'
        WHEN 'S' THEN 'Other sale items'
        ELSE 'Not for sale'
      END,
  Name
FROM Production.Product
ORDER BY ProductNumber;
GO
Avatar billede frederik_kromann Nybegynder
31. januar 2008 - 05:32 #6
ved ikke hvor i min select sætning case when skal sættes ind og hvilke navne der skal være hvor. det jeg vil svarer til at sætte fæølgende formel ind i excel i en ny kolonne med overskriften salgdkk: hvis(dataareaid="se";salesbalancemst*,8;salesbalance)
Avatar billede frederik_kromann Nybegynder
31. januar 2008 - 05:33 #7
he he arne "i din SQL" ....så langt var jeg med.
Avatar billede arne_v Ekspert
31. januar 2008 - 15:13 #8
SELECT ...,CALCVAL = CASE dataareaid WHEN 'se' THEN salesbalancemst*0.8 ELSE salesbalance END, ... FROM ... WHERE ...
Avatar billede frederik_kromann Nybegynder
31. januar 2008 - 15:26 #9
NICEEEEE hvad hvis jeg tester både på se og no altså flere cases. ellers virker det super duper super.
Avatar billede frederik_kromann Nybegynder
31. januar 2008 - 19:29 #10
har fundet ud af det - tak for hjælpen arne drop et svar. Måske du lige kan hjælpe mig med like:

Interco = CASE invoicingname when like '%Jem%' then 'Ja' else 'Nej' end, så siger den at den ikke forventer et 'when' efter select. hvad kan det være.
Avatar billede frederik_kromann Nybegynder
31. januar 2008 - 20:36 #11
vil gerne kunne lave et ja nej felt på baggrund af indholdet i et tekst felt.
Avatar billede arne_v Ekspert
03. februar 2008 - 05:37 #12
Interco = CASE when invoicingname like '%Jem%' then 'Ja' else 'Nej'
Avatar billede arne_v Ekspert
03. februar 2008 - 05:37 #13
Og et svar.
Avatar billede frederik_kromann Nybegynder
03. februar 2008 - 19:58 #14
Super godt arne. Det her begynder at spille max. Har dog en sidste ting jeg har brug for at vide hvis du har mod på det. Det ville være en fantastisk hjælp.
http://www.eksperten.dk/spm/817853
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester