Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    innter joint... va bene così?

    ciao a tutti, ho due tabelle:

    tabella products
    campo products_id
    campo products_model

    tabella products_description
    campo products_id
    campo products_name

    dovrei visualizzare il modello e poi il nome del prodotto
    andrebbe bene questa query inner join?

    codice:
    SELECT * FROM products AS p, products_description AS pd WHERE p.products_id = pd.products_id AND products_id = $id

  2. #2
    Non è propriamente una join...
    (immagino la dovrai usare in php)
    codice:
    SELECT p.products_model, pd.products_name
    FROM products p
    INNER JOIN products_description pd
    ON pd.products_id = p.products_id
    WHERE p.products_id = {$id}
    La tua query ti genera una ambiguità sulla condizione WHERE (products_id appartiene a due tabelle, quindi non saprebbe da quale delle due controllare)

  3. #3

    Re: innter joint... va bene così?

    Originariamente inviato da ratlook
    joint
    ... joint? vabbhè che non ci riesci... ma darti alla droga lo trovo esagerato...

  4. #4
    Moderatore di CMS L'avatar di kalosjo
    Registrato dal
    Jul 2001
    residenza
    In culo alla luna
    Messaggi
    1,999
    La prima è un join implicito la seconda un join esplicito.

    La prima va bene perchè ha usato gli alias, quindi l'id sa da dove prenderlo
    Scusate i puntini di sospensione...... La verità è che non ho argomenti....

  5. #5
    mettere * soprattuto in una JOIN non è mai una bella cosa:
    1) carico di lavoro inutile per dati non necessari
    2) potrebbero esserci capi con lo stesso nome nelle due tabelle

    meglio elencarli uno ad uno come fatto da Dascos... secondo me...

  6. #6
    no, l'id non sa dove prenderlo...
    codice:
    AND products_id = $id
    Quale product_id deve prendere?Quello di pd o quello di p?

  7. #7
    Moderatore di CMS L'avatar di kalosjo
    Registrato dal
    Jul 2001
    residenza
    In culo alla luna
    Messaggi
    1,999
    Originariamente inviato da Dascos
    no, l'id non sa dove prenderlo...
    codice:
    AND products_id = $id
    Quale product_id deve prendere?Quello di pd o quello di p?
    mi era sfuggito
    Scusate i puntini di sospensione...... La verità è che non ho argomenti....

  8. #8
    Originariamente inviato da kalosjo
    mi era sfuggito
    Nessun problema, capita

  9. #9
    ok grazie a tutti, ora provo...

  10. #10
    ho provato questa ma nn funge...

    codice:
    $query1 = mysql_query("SELECT p.products_id, p.products_model, pd.products_id, pd.products_name FROM products p INNER JOIN products_description pd ON pd.products_id = p.products_id ORDER BY p.products_model");
    il bello è che non mi dà neanche errori... pagina bianca e basta...

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.