Visualizzazione dei risultati da 1 a 4 su 4

Discussione: [MySql]Join and View

  1. #1

    [MySql]Join and View

    allora, martedì ho l'esame di basi di dati, laboratorio.

    nella traccia è quasi sempre chiesto di fare le query una volta con la select normale (con prodotto cartesiano..e già qui mi perdo..)e poi di rifare la stessa query con la JOIN.

    premetto che sul libro, le join le fa tutte con la select, quindi non conosco ne sintassi ne niente...

    se gentilmente me la spiegate in 4 parole o mi mandate a quelche bel link dove la cosa è spiegata per bene (no english plz)



    poi ci sono le viste..o view..il libro di sql mi fa un ampia panoramica, ma in ambiente mysql non vanno, sbaglio io oppure queste benedette cose in mysql non esistono?

    questa è una vista di prova

    codice:
    create VIEW A1
    (Vpart_citta,Varr_citta)
    AS
    SELECT part_citta,arr_citta,
    from aer_part,aer_dest
    where aer_part=005;


    grazie a tutti

    -Flavio-

  2. #2
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    Allora...

    il mysql non è altro che un rdbms.. sistema manageriale di basri di dati di tipo relazionale...

    lo standar per le query su tali db è sql...

    mysql implementa quello che gli pare di tale linguaggio.. ad esempio non le view...

    le join ti servono per poter intercettare record su tabelle diverse...

    SELECT p.*,s.* FROM prima p JOIN seconda s ON p.pluto=s.pippo

    ti impippetta nei risultati record che hanno campi di entrambe le due tabelle ma in cui la seconda ha valori nei record per il campo pippo uguale a quelli nel campo plutodella prima tabella...

    fai na ricerca per la manualistica sql...

    in bocca al lupo x l'esame...

    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

  3. #3
    Originariamente inviato da luke83

    le join ti servono per poter intercettare record su tabelle diverse...

    SELECT p.*,s.* FROM prima p JOIN seconda s ON p.pluto=s.pippo

    ti impippetta nei risultati record che hanno campi di entrambe le due tabelle ma in cui la seconda ha valori nei record per il campo pippo uguale a quelli nel campo plutodella prima tabella...

    fai na ricerca per la manualistica sql...

    in bocca al lupo x l'esame...


    VVoVe:


    parole semplici?


  4. #4

    Re: [MySql]Join and View

    Originariamente inviato da ultrasflavio
    nella traccia è quasi sempre chiesto di fare le query una volta con la select normale (con prodotto cartesiano..e già qui mi perdo..)e poi di rifare la stessa query con la JOIN.

    premetto che sul libro, le join le fa tutte con la select, quindi non conosco ne sintassi ne niente...
    facciamo che hai uno schema studenti ed uno esame...

    studenti: matricola, nome, cognoem etc etc
    esami: nome_esame, matricola, data, voto

    vuoi prendere tutti gli esami fatti da un certo studente con matricola 100:

    select nome_esame
    from esami as e, studenti as s
    where e.matricola = s.matricola //condizione di join
    and s.matricola = 100


    oppure

    select nome_esame
    from esami as e
    join studenti as s on e.matricola = s.matricola //condizione di join
    where matricola = 100


    Credo sia questo che intende la tua prof... la prima query fa un prodotto cartesiano tra le due tabelle e poi seleziona, tra tutte, le tuple che hanno la stessa matricola sia per l'esame ch per lo studente, e gli (lo) studenti che hanno matricola 100

    la seconda invece prende esami, fa il join con una precisa condizione (specificata esplicitamente, e non nella clausola where) unendo ad esame i dati degli studenti (ma non avendo il prodotto cartesiano = tutti gli esami in relazione con tutti gli studenti) e poi con la where seleziona solo le tuple in cui la matricola dello studente è 100


    credo intendessi questo.. spero sia chiaro.

    Quanto alle viste: in mysql niente per ora


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.