Visualizzazione risultati 1 fino 7 di 7

Discussione: [MySQL] Errore Subquery

  1. #1
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito [MySQL] Errore Subquery

    Ciao a tutti

    ho un errore con questa subquery, qualcuno mi puo' aiutare?



    Codice PHP:
    SELECT Person.Name FROM Person WHERE PersonID IN
    (SELECT PersonPseudonym.PseudonymID FROM PersonPseudonym WHERE PersonPseudonym.PersonID = 115)
    SELECT
    person
    .`Name`,
    personpseudonym.PseudonymID,
    personpseudonym.PersonID,
    person.PersonID
    FROM
    person
    INNER JOIN personpseudonym ON person
    .PersonID = personpseudonym.PersonID
    WHERE person
    .PersonID = 115

    risultato

    SELECT Person.Name FROM Person WHERE PersonID IN
    (SELECT PersonPseudonym.PseudonymID FROM PersonPseudonym WHERE PersonPseudonym.PersonID = 115)
    SELECT
    person.`Name`,
    personpseudonym.PseudonymID,
    personpseudonym.PersonID,
    person.PersonID
    FROM
    person
    INNER JOIN personpseudonym ON person.PersonID = personpseudonym.PersonID
    WHERE person.PersonID = 115
    > 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT
    person.`Name`,
    personpseudonym.PseudonymID,
    personpseudonym.PersonID,
    ' at line 3
    > Time: 0s
    Ultima modifica di blackskyisback : 12-02-2021 alle ore 14.01.34

  2. #2
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    3,998

    Predefinito

    Salve,
    tolga gli apici da person.`Name`.

    Cordiali saluti.
    Ultima modifica di GraphOGLRisorse : 12-02-2021 alle ore 15.05.46

  3. #3
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    Citazione Originalmente inviato da GraphOGLRisorse Visualizza messaggio
    Salve,
    tolga gli apici da person.`Name`.

    Cordiali saluti.
    gia' provato e sempre errore


    SELECT Person.Name FROM Person WHERE PersonID IN
    (SELECT PersonPseudonym.PseudonymID FROM PersonPseudonym WHERE PersonPseudonym.PersonID = 115)
    SELECT
    person.Name,
    personpseudonym.PseudonymID,
    personpseudonym.PersonID,
    person.PersonID
    FROM
    person
    INNER JOIN personpseudonym ON person.PersonID = personpseudonym.PersonID
    WHERE person.PersonID = 115
    > 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT
    person.Name,
    personpseudonym.PseudonymID,
    personpseudonym.PersonID,
    perso' at line 3
    > Time: 0,001s
    ps: la mia versione mysql e' la 5.6
    Ultima modifica di blackskyisback : 12-02-2021 alle ore 15.45.57

  4. #4
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    3,998

    Predefinito

    Prima della modifica:
    Codice:
    person.`Name`,
    personpseudonym.PseudonymID,
    personpseudonym.PersonID,
    ' at line 3
    > Time: 0s
    dopo la modifica:
    Codice:
    person.Name,
    personpseudonym.PseudonymID,
    personpseudonym.PersonID,
    perso' at line 3
    > Time: 0,001s
    Adesso esce un perso(perso' at line 3) che prima non appariva nel messaggio.

    Perso è corretto così?

    Cordiali saluti.
    Ultima modifica di GraphOGLRisorse : 12-02-2021 alle ore 16.12.12

  5. #5
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    perso non e' presente nel database, non capisco da dove arriva

    solo i dati inseriti nella query

  6. #6
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    backtick
    Codice:
    `my-table`.`my-column`
    Un esempio di semplice query
    Codice:
    SELECT * FROM `my-table`.`my-column`;
    tradotto in stringa php
    Codice PHP:
    $query = 'SELECT * FROM `my-table`.`my-column`'; //Può anche essere presente il carattere del semicolonna ma non in mysqli_query
    Per completezza backtick per php https://www.php.net/manual/en/langua....execution.php
    Devi usare tabella . colonna sostituendo con i nomi effettivi.
    Ultima modifica di darbula : 12-02-2021 alle ore 22.57.47

  7. #7
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    risolto


    SELECT Person.Name FROM Person WHERE PersonID IN
    (SELECT PersonPseudonym.PseudonymID FROM PersonPseudonym WHERE PersonPseudonym.PersonID = 115)

    Ultima modifica di blackskyisback : 13-02-2021 alle ore 10.33.33

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •