Problema query complesse

di il
6 risposte

Problema query complesse

Ciao ragazzi, ho un problema con le query più complesse. Ho una difficoltà assurda, non riesco ad assimilarle e non mi ntrano in testa. Vi posto un esempio.

MOTO(TARGA, CILINDRATA, MARCA, NAZIONE, TASSE)
PROPRIETARIO( NOME, TARGA)

Devo scrivere in SQL: I nomi dei proprietari di solo moto giapponesi di almeno due marche diverse.

Questa interrogazione, nemmeno a natale dell'anno prossimo riuscirò a farla.

6 Risposte

  • Re: Problema query complesse

    E un tuo tentativo? Nulla?
  • Re: Problema query complesse

    oregon ha scritto:


    E un tuo tentativo? Nulla?
    Cioè, non è che voglio la pappa pronta, ma è talmente complesso questo tipo di query, che se anche facessi un tentativo, risulterebbe sbagliato. Non saprei proprio da dove cominciare
  • Re: Problema query complesse

    L'unica cosa che potrei scrivere è:
    SELECT P.Nome
    FROM Proprietario p, moto m
    WHERE P.nome not in( SELECT P.nome
    FROM proprietario p,moto m
    WHERE nazione<> giappone)
    group by nome
    having count (marca)>=2;
  • Re: Problema query complesse

    L'errore concettuale che fai e' quello di voler creare la query in un colpo solo.

    Smontala nelle varie parti, crea le query che selezionano i record secondo un criterio alla volta, e poi ricomponi tutto per ottenere il risultato voluto

    Aiutino: ti serve una join

    Nome, targa + targa,..., nazione - > nome, nazione

    Poi e' semplice
  • Re: Problema query complesse

    migliorabile ha scritto:


    L'errore concettuale che fai e' quello di voler creare la query in un colpo solo.

    Smontala nelle varie parti, crea le query che selezionano i record secondo un criterio alla volta, e poi ricomponi tutto per ottenere il risultato voluto

    Aiutino: ti serve una join

    Nome, targa + targa,..., nazione - > nome, nazione

    Poi e' semplice
    Lo so, ma è solo da aprile che studio basi di dati e non ancora riesco ad avere quella elasticità mentale che invece servirebbe.
  • Re: Problema query complesse

    Cosa fai se scorri due elenchi? un elenco e' moto, l'altro e' proprietari. un db fa la stessa cosa che faresti tu.
    scorri moto per vedere la nazione, ti segni la targa e cerchi la targa sull'elenco proprietari... targa e' una join.
    nell'area mysql trovi l'uso delle join.
    in sostanza:
    selezioni nazione marca e targa da moto e unicsi con proprietari tramite targa dove nazione e' "GIAPPONE"
    elasticizza la mente....
Devi accedere o registrarti per scrivere nel forum
6 risposte