Visualizzazione dei risultati da 1 a 10 su 14

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,326
    non si trata degli apici, ma il confronto tra un field ed un parametro l puoi fare solo se sono dello stesso tipo.
    quindi o confronti data vs data o string vs string

    quindi, penso devi scrivere qualcosa di simile:

    codice:
    select pratiche.*,
    pratiche.id as idP,
    piani.data as dataP 
    from pratiche 
    INNER JOIN piani ON pratiche.id=piani.id_pratica 
    where piani.tipo='2' 
    and pratiche.stato='1' 
    and TO_CHAR(1a_data_ric_doc, 'YYYY-MM-DD')='0000-00-00' 
    AND TO_CHAR(data_audit, 'YYYY-MM-DD') between '2014-01-01' AND '2014-01-15' 
    order by dataP
    ricorda sempre di specificare il nome tabella prima del nome field!

    non ho potuto testare l'esempio, ma penso ti dia un'idea....

    http://www.sqlines.com/mysql-to-oracle/date_format

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2014
    residenza
    Genova, presenza costante a Milano
    Messaggi
    100
    Quote Originariamente inviata da 123delphi321 Visualizza il messaggio
    non si trata degli apici, ma il confronto tra un field ed un parametro l puoi fare solo se sono dello stesso tipo.
    Vorrei tanto che tu avessi ragione, ma purtroppo in MySQL (e non solo) non è mai stato così. Non solo per la data (dove la cosa è comprensibile, come dicevo) ma anche per gli altri tipi. Ti faccio un esempio estremo:

    SELECT 'A'=0;
    +-------+
    | 'A'=0 |
    +-------+
    | 1 |
    +-------+

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,326
    e ti dirò di più...qualche post precedente una persona riesce a fare la sum di un field varchar sempre con MySql!!!!!!!...firebird che utilizzo io va in errore!

    questa cosa mi spiazza un pochettino.

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2014
    residenza
    Genova, presenza costante a Milano
    Messaggi
    100
    ...e di conseguenza:

    MariaDB [test]> SELECT a FROM t WHERE a > '100';
    +-------+
    | a |
    +-------+
    | 20000 |
    | 2 |
    +-------+
    2 rows in set (0.00 sec)

    Questo si risolve togliendo le virgolette, ma tutti le usano perché pensano che sia un modo intelligente per evitare l'sql injection, o forse per pigrizia.

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.