Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Problemi con Query con Orari formato stringa

    Salve a tutti,

    mi trovo un pò in difficolta con l'estrapolazione di dati da un DB (DB2).
    Ho una tabella di nome CHIAMATE + una di nome EVENTI.
    In tutte e due le tabelle ci sono i campi DATAINT, DALLEORE, ALLEORE.
    Quello che devo estrapolare è per ogni giorno la somma dei minuti sia in CHIAMATE che in EVENTI.
    Il problema è che i campi in questione sono in formato testo "1545", "1800" ....
    Quindi dovrei prima di tutto convertire "1545" in 15:45 e poi utilizzare il DateDiff.
    Ho provato ad utilizzare una cosa simile ...

    DateDiff("n", Left(Trim(Rs("DALLEORE")),2)&":"&Right(Trim(Rs("DA LLEORE")),2), Left(Trim(Rs("ALLEORE")),2)&":"&Right(Trim(Rs("ALL EORE")),2))

    direttamente su db ma non funziona, non gli piace il carattere "&"

    Mi sapreste dare qualche suggerimento ?
    Pippo Giacalone
    giacalone@tin.it

  2. #2

  3. #3
    Codice PHP:
    SQLCRM "SELECT PRESENZE.CODICEOP, PRESENZE.DATA, CHIAMATE.DALLEORE, CHIAMATE.ALLEORE, EVENTI.DALLEORE, EVENTI.ALLEORE, " &_
    "Left(EVENTI.DALLEORE,2) +:+ Right(EVENTI.DALLEORE,4) AS D, " &_
    "Left(EVENTI.ALLEORE,2) +:+ Right(EVENTI.ALLEORE,4) AS A, " &_
    "DateDiff('n',D,A) AS MINEVENTI, " &_
    "Left(CHIAMATE.DALLEORE,2) +:+ Right(CHIAMATE.DALLEORE,4) AS DC, " &_
    "Left(CHIAMATE.ALLEORE,2) +:+ Right(CHIAMATE.ALLEORE,4) AS AC, " &_
    "DateDiff('n',DC,AC) AS MINCHIAMATE " &_
    "FROM (PRESENZE LEFT JOIN CHIAMATE ON (PRESENZE.DATA = CHIAMATE.DATAINT) " &_
    "AND (PRESENZE.CODICEOP = CHIAMATE.CODICEASS)) LEFT JOIN EVENTI ON (PRESENZE.DATA = EVENTI.DATAINT) " &_
    "AND (PRESENZE.CODICEOP = EVENTI.CODICEASS) WHERE (((PRESENZE.CODICEOP)='A00012') " &_
    "AND ((PRESENZE.DATA) Like '200809%'))"
    response.write(SQLCRM)':response.end
    Set RsCRM = ConnCrm.Execute(SQLCRM)


    Microsoft OLE DB Provider for ODBC Drivers error '
    80004005

    [IBM][CLI Driver][DB2/NT] SQL0104N E' 
    stato trovato un token ":+ Right" non previsto dopo "EVENTI.DALLEORE,2) +"I token previsti possono comprendere"<func_name>"SQLSTATE=42601 

    /CRM/112.ASPline 129 
    ho provato ad inserire + ma, se non ho sbagliato come doveva essere inserito, non funziona.
    Pippo Giacalone
    giacalone@tin.it

  4. #4

  5. #5
    dici così:

    Left(EVENTI.DALLEORE,2) +':'+ Right(EVENTI.DALLEORE,4)


    mi da questo errore

    Microsoft OLE DB Provider for ODBC Drivers error '80004005'

    [IBM][CLI Driver][DB2/NT] SQL0402N Il tipo di dati di un operando di una funzione od operazione aritmetica "+" non è numerico. SQLSTATE=42819

    /CRM/112.ASP, line 129
    Pippo Giacalone
    giacalone@tin.it

  6. #6
    peppe, ho usato gugol (conosci? ) e ho visto che in db2 bisogna usare ||

    ma non so se è giusto. non conoshco db2

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 © 2026 vBulletin Solutions, Inc. All rights reserved.