Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1

    [SQL Server 2005]Moltiplicazione al volo

    Ciao,
    anche oggi vi chiedo una mano

    io ho questa query

    SELECT DISTINCT (ID_WO),CDC, CODE_PREFIX, COSTO_EQP, COSTO_SPP, QTY_SPP, COSTO_SERVIZIO
    FROM EXPORT_COSTI
    WHERE CODE_PREFIX LIKE 'H/CL/DI%'
    AND CONVERT(datetime, REPLACE(DATA_AVANZAMENTO, '.', ':'), 3)
    between
    (CAST('04/11/2010 01:00:00.000' as datetime)) and (CAST('04/22/2010 23:59:00.000' as datetime))
    order by CODE_PREFIX

    che mi produce un risultato come questo

    ID_WO------CODE_PREFIX-----COSTO_EQP---COSTO_SPP---QTY_SPP ---COSTO_SERVIZIO
    11516-------H/CL/DI/CAR------NULL----------24.00---------2.00---------NULL
    11522-------H/CL/DI/CAR------NULL----------10.00---------2.00---------NULL
    11523-------H/CL/DI/CAR------NULL----------24.00---------1.00---------NULL

    ecco io ovvrei moltiplicare al volo COSTO _SPP * QTY_SPP....e metterli in una nuova colonna di fianco.....

  2. #2
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    basta aggiungere la colonna calcolata.

    codice:
    SELECT DISTINCT (ID_WO),CDC, CODE_PREFIX, COSTO_EQP, COSTO_SPP
        , QTY_SPP, COSTO_SERVIZIO, (COSTO _SPP * QTY_SPP) As Totale

  3. #3
    eggià!

    grazie!

  4. #4
    vi chiedo ancora una cosa...

    faccio questa query come mi avete suggerito

    SELECT DISTINCT(CODE_PREFIX), CDC COSTO_EQP, SPP_COST
    , QTY_SPP, COSTO_SERVIZIO, (SPP_COST * QTY_SPP) As Totale_spp

    FROM EXPORT_COSTI WHERE CODE_PREFIX LIKE
    'H/CL/DI%' AND CONVERT(datetime, REPLACE(DATA_AVANZAMENTO, '.', ':'), 3)between
    (CAST('04/11/2010 01:00:00.000' as datetime)) and (CAST('04/22/2010 23:59:00.000' as datetime))
    order by CODE_PREFIX

    ed ora mi ritorna

    CODE_PREFIX----COSTO_SPP-----QTY_SPP ---COSTO_SERVIZIO----Totale_spp
    H/CL/DI/CAR-----10.00----------2.00----------NULL----------------20.0000
    H/CL/DI/CAR-----24.00----------1.00----------NULL----------------24.0000
    H/CL/DI/CAR-----24.00----------2.00----------NULL----------------48.0000

    eccoa da questa tabella avrei bisogno di ottenre questa

    CODE_PREFIX----Totale_spp-----COSTO_SERVIZIO
    H/CL/DI/CAR-----92.0000--------NULL-----

    è possibile in colpo solo ottenere anche questa tabella?

  5. #5
    togli le colonne che non ti servono e aggiungi sum(costo)

  6. #6
    ma tutto nella stessa query?

    o devo copiare il risultato della prima query in una tabella.....e poi farci un'altra query sopra?

    le colonne le posso puren ascondere
    ma non ho capito
    1. come raggruppare le 3 righe in una sola...(se cerco di raggruppare per code_prefix me ne mostra sempre 3 perchè gli altri campi sono diversi)

    2. io dovrei fare elect sum di (SPP_COST * QTY_SPP)....ma no me lo fa fare.. :master:

  7. #7
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Originariamente inviato da elsinore77
    ma tutto nella stessa query?
    Sì.

    Leggi BENE la risposta di Optime.


  8. #8
    non ho capito


    ok ho tolto le colonne che non mi servono...ho aggiunto SUM(COSTO_SPP)

    SELECT DISTINCT(CODE_PREFIX), CDC, COSTO_EQP, COSTO_SERVIZIO,
    (SPP_COST * QTY_SPP) As COSTO_SPP, SUM(COSTO_SPP)
    FROM EXPORT_COSTI WHERE CODE_PREFIX LIKE
    'H/CL/DI%' AND CONVERT(datetime, REPLACE(DATA_AVANZAMENTO, '.', ':'), 3)between
    (CAST('04/11/2010 01:00:00.000' as datetime)) and (CAST('04/22/2010 23:59:00.000' as datetime))
    order by CODE_PREFIX

    ma:
    - la colonna COSTO_SPP mi dice che non esiste...perchè la creo al volo
    - non ho ancora capito come raggruppare per H/CL/DI/CAR..per avere alla fine solo

    CODE_PREFIX----Totale_spp-----COSTO_SERVIZIO

    H/CL/DI/CAR-----92.0000--------NULL

  9. #9
    SELECT DISTINCT(CODE_PREFIX), CDC, COSTO_EQP, COSTO_SERVIZIO,
    (SPP_COST * QTY_SPP) As COSTO_SPP, SUM(SPP_COST * QTY_SPP)...

    that easy!

  10. #10
    e mica tanto!.....

    perchè mi dice..

    Msg 8120, Level 16, State 1, Line 1
    Column 'EXPORT_COSTI.CODE_PREFIX' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.


    uff..

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.