Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Jpa 1 Left Join

  1. #1

    Jpa 1 Left Join

    Ciao,


    sto provando a lanciare una query con JPA utilizzando la LEFT JOIN

    SELECT j FROM JgAnnuncio j LEFT JOIN JgAnnunciovettura i WHERE j.idAnnuncio=i.idAnnuncio.idAnnuncio AND j.deleted <> 'E' AND j.idCategoria=1 AND j.idsottoCategoria=1 ORDER BY j.dtIns DESC


    Però ho questo errore: java.lang.IllegalArgumentException: An exception occured while creating a query in EntityManager



    Qualcuno sa dirmi quale è la sintassi per eseguire la left join?




    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    codice:
    SELECT column(s) 
    FROM table_1 
    LEFT JOIN table_2 
    ON table_1.column_1 = table_2.column_2 
    ...
    da te non si capisce:
    che cosa sia j (come la giri giri, sempre sbagliato è)
    che cosa sia i (come sopra)

    manca la clausola ON

    PS: esiste la ricerca internet per controllare la sintassi di query e quant'altro, essendo totalmente indipendente dalla programmazione java.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    @Andrea1979: quello non è SQL, ma JPQL (Java Persistence Query Language).

    L'errore credo stia qui (vedi grassetto)

    codice:
    SELECT j FROM JgAnnuncio j LEFT JOIN JgAnnunciovettura i
    WHERE j.idAnnuncio=i.idAnnuncio.idAnnuncio
          AND j.deleted <> 'E'
          AND j.idCategoria=1
          AND j.idsottoCategoria=1
    ORDER BY j.dtIns DESC
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Chiedo venia! Certo però che è una sintassi assolutamente anti-istintiva.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da Andrea1979
    Chiedo venia! Certo però che è una sintassi assolutamente anti-istintiva.
    Sì, anch'io all'inizio la trovavo poco intuitiva... ma dopo un po' che la usi, ci prendi mano e diventa fluida.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

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.