Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Query che non funziona

  1. #1

    Query che non funziona

    Salve signori, ho un piccolo problema con una query che continua a darmi errore:

    Codice PHP:
    SELECT *
    FROM tabella1
    LEFT JOINT tabella2 ON tabella1
    .ID tabella2.ID
    WHERE tabella1
    .'1'
    ORDER BY 'tabella1.a' 
    Tutto ciò mi restituisce un errore sull' ORDER BY, come se non andasse d'accordo con il JOIN. E' possibile secondo voi?
    Se tolgo il JOIN o l'ORDER BY va tutto tranquillo... :rollo:

  2. #2
    togli le apici al valore in order by

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it L'avatar di Avalox
    Registrato dal
    Nov 2003
    Messaggi
    302
    Cosa vuoi selezionare? considera che se tabella1 e tabella2 hanno dei campi con gli stessi nomi, la select può avere dei problemi a capire per quel campo a quale tabella ti riferisci...

    prova qualcosa tipo:

    Codice PHP:
    SELECT tabella1.AS t1Atabella1.*, tabella2.ilCampoCheVuoiTe
    FROM tabella1
    LEFT JOINT tabella2 ON tabella1
    .ID tabella2.ID
    WHERE tabella1
    .'1'
    ORDER BY tabella1.
    Fammi sapere

  4. #4
    Utente di HTML.it L'avatar di Avalox
    Registrato dal
    Nov 2003
    Messaggi
    302
    oooops.... c'era piero in giro

  5. #5
    Grandi Piero e Avalox per le risposte fulminee!

    In particolare a quanto scritto da Avalox, ho notato che usi l'alias per tabella1.a, trasformandolo in t1a, ma poi non riutilizzi più la voce t1a... dici che basta solo dargli un alias per "illuderlo"?

    Boh ora provo, nel frattempo grazie mille

  6. #6
    Utente di HTML.it L'avatar di Avalox
    Registrato dal
    Nov 2003
    Messaggi
    302
    no, l'alias lo usi se vuoi avere vita facile quando recuperi i valori dalla query...
    esempio: metti che le due tabelle hanno lo stesso campo nome ma significati diversi. Come fai a recuperarli entrambi senza fare confusione? Usi l'alias in questo modo

    Codice PHP:
    SELECT tabella1.nome AS nomeutentetabella2.nome AS nomegruppo
    FROM 
    ..... eccc... 
    poi recuperi, dopo fatta la query, in questo modo

    Codice PHP:
    $utente $row['nomeutente'];
    $gruppo $row['nomegruppo']; 
    Spero di averti chiarito ulteriormente le idee...

    Comunque ricordati di togliere gli apici nella clausola ORDER BY ( anche io l'ho fatto perchè mi è venuto naturale...)


  7. #7
    Avalox sei un genio, perchè mi hai risolto pure un altro problema gravissimo; infatti senza alias dovevo contare tutti i record trovati per stamparli con l'eco, visto che una cosa tipo

    Codice PHP:
    echo ($row['tabella1.nome']) 
    mi causava errori di compilazione.

    Ah questi alias... :rollo:

    Grazie ancora.

  8. #8
    Utente di HTML.it L'avatar di Avalox
    Registrato dal
    Nov 2003
    Messaggi
    302
    :rollo: macchè genio.... (per l'SQL è piero )

    Basta solo studiare... è che a volte fa fatica

    Salutoni

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.