Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [SQL] sostituire un risultato

    Salve a tutti, ho un problema che non ho mai capito. Praticamente ho una tabella chiamata tabella1 così strutturata:
    -id_testo
    -testo
    -id_settore

    poi ho la tabella settori
    -id_settore
    -nome_settore

    quando nella tabella 1 lancio per es. SELECT * FROM tabella1 ORDER BY id_settore ASC i risultati restituiti vengono ordinati numericamente. Io vorrei fossero ordinati per nome_settore nella tabella settori, e quindi alfabeticamente. Sapete aiutarmi?
    Per caso centra il famoso ma mai capito INNER JOIN??

  2. #2

    Re: [SQL] sostituire un risultato

    Originariamente inviato da zannas
    ...
    Per caso centra il famoso ma mai capito INNER JOIN??
    esatto!

    codice:
    select t1.* from 
    tabella1 t1 inner join tabella2 t2 on t1.id_settore=t2.id_settore 
    order by nome_settore asc
    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  3. #3
    allora, ho fatto come gai detto tu, con qualche piccola modifica (praticamente ho scritto i campi da selezionare invece del *)
    Risultato:
    #1052 - Column 'id' in field list is ambiguous
    in effetti nelle 2 tabelle vi sono rispettivamente un id ciascuno.
    A me servono entrambi. Sapete darmi una mano? Senza rinominare direttamente una delle 2 tabelle?

  4. #4
    elenca il campo compreso di tabella attribuondo un alias in modo da differenziare i campi. Ovviamente anche nel where, order by, group ecc.......

    select tab1.id as id1, tab2.id as id2, altri....

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

  5. #5

  6. #6
    Originariamente inviato da zannas
    chiedo scusa ma non mi è ben chiaro
    che avendo un id in entrambe le tabelle, giustamente, mySQL entra in crisi e non sa quale id prenderti (infatti l'errore ti dice che quella colonna è ambigua), quindi tu devi specificare che id vuoi, mettendo il nome della tabella davanti al campo che vuoi:

    codice:
    select tabella1.id, tabella2.nome...








    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

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.