Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 14 su 14

Discussione: Join multipla

  1. #11
    Quote Originariamente inviata da Dascos Visualizza il messaggio
    codice:
    SELECT nuc.idnuc,
           nuc.nuc,
           nuc.denominazione,
           hw_articoli.idarticolo,
           hw_articoli.nucac,
           hw_articoli.descrizione,
           hw_articoli.matricola,
           hw_articoli.idpcac,
           hw_dbsoftware.idsoftware,
           hw_dbsoftware.descsoft,
           hw_dbsoftware.snsoft,
           hw_dbsoftware.datainstsoft,
           hw_dbsoftware.idpcsw,
           idpc,
           schedapp
    FROM((servizi.hw_dbpc hw_dbpc
        INNER JOIN servizi.hw_articoli hw_articoli
            ON (hw_dbpc.idpc = hw_articoli.idpcac))
        INNER JOIN servizi.hw_dbsoftware hw_dbsoftware
            ON (hw_dbpc.idpc = hw_dbsoftware.idpcsw))
        INNER JOIN servizi.nuc nuc
            ON (nuc.idnuc = hw_articoli.nucac)
               AND (nuc.idnuc = hw_articoli.descrizione)
    WHERE hw_dbpc.schedapp = '%d'
    Così si legge meglio!
    Allora, tu fai un "from" che è una join, cioè prima join poi from, con le parentesi

    Secondo me dovrebbe essere
    codice:
    SELECT nuc.idnuc,
           nuc.nuc,
           nuc.denominazione,
           hw_articoli.idarticolo,
           hw_articoli.nucac,
           hw_articoli.descrizione,
           hw_articoli.matricola,
           hw_articoli.idpcac,
           hw_dbsoftware.idsoftware,
           hw_dbsoftware.descsoft,
           hw_dbsoftware.snsoft,
           hw_dbsoftware.datainstsoft,
           hw_dbsoftware.idpcsw,
           idpc,
           schedapp
    FROM servizi.hw_dbpc as hw_dbpc
        INNER JOIN servizi.hw_articoli as hw_articoli
            ON hw_dbpc.idpc = hw_articoli.idpcac
        INNER JOIN servizi.hw_dbsoftware as hw_dbsoftware
            ON hw_dbpc.idpc = hw_dbsoftware.idpcsw
        INNER JOIN servizi.nuc as nuc
            ON nuc.idnuc = hw_articoli.nucac
               AND nuc.idnuc = hw_articoli.descrizione
    WHERE hw_dbpc.schedapp = '%d'
    Hai delle join multiple sulle stesse tabelle ma su campi diversi o incrociati....perchè?

    Credo che la parte di from...join vada rivista ma senza una struttura reale delle tabelle e qualche record di esempio è complicato
    Buongiorno,
    chiedo scusa, innanzitutto per come distrattamente ho impaginato la richiesta e ringrazio dell'attenzione dedicatami.
    Nell'immagine allegata il risultato della query che restituisce i due record dei software e due volte lo stesso record con la stessa matricola dell'UPS. Se dovessi cancellare un software automaticamente l'Ups diventerebbe 1, altresì dovessi aumentare i software l'Ups diventerebbe numericamente uguale. Complicato vero? Mi sto perdendo, forse, in un bicchiere d'acqua?

    errore.jpg

  2. #12
    @Savonarola68 , perché ti sei attaccato alla discussione di un altro utente? Apriti una discussione nuova, pls, specificando bene le tue esigenze

  3. #13
    Quote Originariamente inviata da optime Visualizza il messaggio
    @Savonarola68 , perché ti sei attaccato alla discussione di un altro utente? Apriti una discussione nuova, pls, specificando bene le tue esigenze
    Buongiorno,
    mi scuso nuovamente, l'oggetto della discussione era il medesimo e non pensavo di fare un danno così grave. Grazie comunque della disponibilità.
    Cordialmente

  4. #14
    Quote Originariamente inviata da Savonarola68 Visualizza il messaggio
    Buongiorno,
    mi scuso nuovamente, l'oggetto della discussione era il medesimo e non pensavo di fare un danno così grave. Grazie comunque della disponibilità.
    Cordialmente
    Chi ha parlato di "danno"? Si tratta semplicemente di rispettare le regole del forum buon lavoro

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.