Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Aiuto select e apici

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    8

    Aiuto select e apici

    SALVE A TUTTI SONO NUOVO E SCUSATE LA DOMANDA PROBABILMENTE BANALE MA IO HO CERCATO SUL WEB E NON CAPISCO COSA VOGLIONO DIRE.
    LA DOMANDA E' QUESTA:

    se ho:

    ATTORE(Codice, Nome, DataNascita, Nazionalità)
    FILM(Codice, Titolo, AnnoProduzione, Incasso)
    PARTECIPA(CodiceAttore, CodiceFilm, Ruolo, Compenso)

    SE EFFETTUO QUESTA QUERY:

    SELECT Titolo, Nome
    FROM Film, Attore
    WHERE Anno>1965 AND Ruolo='protagonista' AND Codice=CodiceFilm AND Codice=CodiceAttore

    innanzitutto è corretta?
    Poi perchè in SELECT alcune volte uso gli apici e altre volte no?
    Inoltre se dopo l'uguale o prima ci metto uno spazio è un errore?

    Grazie mille a tutti, ma sui libri non trovo spiegazioni per queste domande

  2. #2
    La query non e' corretta intanto perche' dichiari un campo come AnnoProduzione e poi chiami Anno nel where, poi hai tre tabelle ma nella JOIN ne citi solo due, ancora devi definire tabella.campo quando hai dei campi con stesso nome su diverse tabelle altrimenti mysql non saprebbe che tabella usare.

    gli apici servono quando si tratta di una stringa ascii e non di una costante, funzione o nome di campo/tabella. lo spazio prima e/o dopo il segno = non e' fondamentale perche' e' un segno divisore della istruzione gia' di suo. Ma se lo metti chi legge lo script e' piu' contento.

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

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    8
    Grazie intanto ma per stringa ASCII e una costante qual'è la differenza? Come capisco qual'è una o l'altra? E poi che vuol dire definire tabella.campo? Devo mettere il nome intero come inserito nella tabella? Vuoi dire questo? Grazie ancora

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    71
    Ti faccio un esempio per capire cosa vuol dire definire tabella.campo

    /*codice di tutti gli autori */

    select att.codice
    from nomeschema.attore att ( come se stessi rinominando, così dopo non riscrivi tutto )

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    8
    Non ho mica capito! Ma la query sopra come diventerebbe? Non capisco in che modo cambi. Ho bisogno di vederlo per capirlo perché con sta teoria ogni libro dice la sua!!!

  6. #6
    quello è un alias

    esempio base: SELECT nome FROM clienti
    esempio esteso: SELECT clienti.nome FROM clienti
    esempio con alias: SELECT c.nome FROM clienti c

    sono tutti validi; il terzo è molto comodo quando hai tante tabelle nella stessa query, per non confonderti (e per non confondere sql)

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    8
    Ah ok. Invece per quanto riguarda gli apici quando li uso e quando no, nell'opzione WHERE?

  8. #8
    vanno usati per le colonne di tipo alfanumerico e per le date, non per i numeri.

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    8
    Ah ok grazie mille, adesso sembra tutto più chiaro anche se ho visto varie stringhe sul web e manuali dove anche i nomi erano chiusi tra apici e altri invece no! Sono queste le cose strane sembra non ci sia un uso logico e continuo di questi maledetti apici.
    per quanto riguarda lo schema che ho postato all'inizio dici che è meglio inserire in FROM anche la terza tabella o eliminare i parametri nel WHERE? È un esercizio per l'università

  10. #10
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    71
    Quote Originariamente inviata da optime Visualizza il messaggio
    quello è un alias

    esempio base: SELECT nome FROM clienti
    esempio esteso: SELECT clienti.nome FROM clienti
    esempio con alias: SELECT c.nome FROM clienti c

    sono tutti validi; il terzo è molto comodo quando hai tante tabelle nella stessa query, per non confonderti (e per non confondere sql)
    si ALIAS, solitamente è quello che si usa essendo abbastanza comodo

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.