Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla
Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla
Una ammiraglia elettrica, da sei o sette posti, con il comfort di viaggio come missione assoluta. Un'auto non per tutti, ma di cui ti innamori dopo pochi giorni, ecco com'è andata la nostra prova di lunga durata
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode
Hyper Mini LED con 2.304 zone, DisplayPort 2.1 e Dual Mode: 5K a 165 Hz oppure QHD a 330 Hz: LG propone un monitor da gioco ma dalla buona versatilità creativa, con prestazioni interessanti e un listino di 1.220 euro. Peccato l'alimentatore ingombrante
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio
Motorola edge 70 Fusion FIFA World Cup 26 Edition porta la maglia iridata su uno smartphone accessibile: display Extreme AMOLED da 6,78 pollici a 144Hz, fotocamera Sony LYTIA 710 con moto ai, Snapdragon 7s Gen 3 abbinato a 8GB di RAM, batteria da 5200 mAh con ricarica TurboPower a 68W e certificazione IP68/IP69, il tutto in una veste PANTONE Silhouette con logo dorato a 24 carati, moto buds bass incluse in confezione e contenuti software dedicati ai Mondiali 2026
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-01-2008, 19:33   #1
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2688
[SQL urgente] Problema a realizzare queste 2 query...aiuto esame dopodomani

Sono un po' disperato perchè ho ancora qualche problema di query e tra due giorni ho l'esame di database

Vi prego di chiarirmi qualche dubbio.

Ho le seguenti tabelle:

PORTAEREI(nome_portaerei, anno_varo, numero_marinai)

AEREO(codice, anno_produzione, nome_portaerei)

PILOTA(matricola, nome, ore_di_volo, codice_aereo_pilotato)

ATTERRAGGIO(ID_atterragio, nome_portaerei, codice_aereo, data)

Allora le chiavi sono in grassetto, i vincoli di inegrità referenziale credo siano chiari dai nomi cmq AEREO è collegato a PORTAEREI mediante: nome_portaerei.

PILOTA è collegato ad AEREO tramite il codice dell'aereo.

ATTERRAGGIO è collegato ad AEREO e PORTAEREI tramite il nome della portaerei su cui un aereo atterra e il codice dell'aereo che atterra.

Le due query da realizzare che proprio non riesco a fare sono:

1) Elencare tutti i piloti che sono sulla stessa portaerei del pilota "Pippo".

2)Per ogni aereo si vuole sapere quante volte è atterrato su una portaerei diversa da quella di
appartenenza.

Per favore datemi una mano che devo capirci qualcosa entro Lunedì

Grazie
Andrea

Ultima modifica di D4rkAng3l : 19-01-2008 alle 21:36.
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2008, 20:37   #2
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2688
Oddio non ne esco credo che questa robba vada fatta usando gli ALIAS (select nidificate escluse a priori)

Qualcosa che mi viene in mente è tipo di fare qualcosa del genere:

[code]

SELECT X.nome
FROM PILOTA AS X, PILOTA AS Y, AEREO, PORTAEREI
WHERE Y.nome = 'Pippo'
AND Y.codice_aereo = AEREO.codice
AND AEREO.nome_portaerei = PORTAEREI.nome_portaerei

// Così facendo dovrei aver navigato per il db facendo vari join e dovrei aver trovato la portaerei sulla quale è stanziato il pilota Pippo ma ora non sò come collegarlo alla colonna X di tutti i piloti...stò alla frutta aiutatemi per favore :-(
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2008, 21:36   #3
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2688
ops c'era un errorino scritto nelle tabelle...per favore datemi una mano...sono nel panico
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 20-01-2008, 08:13   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Ad occhio dovrebbe andare, ma così hai fatto un mega tabellone

Puoi usare le select annidate nel where ?

SELECT X.nome
FROM PILOTA, AEREO, PORTAEREI
WHERE PILOTA.codice_aereo = AEREO.codice
AND AEREO.nome_portaerei = (SELECT AEREO.nome_portaerei FROM PILOTA, AEREO WHERE nome = 'pippo' AND AEREO.codice_aereo = PILOTA.codice_aereo);

Sempre rispettando il modo tuo di dare i nomi e di fare la query.

Riguardando la tua query potresti risparmiarti la tabella PORTAEREI, visto che il nome della portaerei lo hai già in AEREO.

Comunque perché non ti crei le tabelle su Access e provi da lì a scrivere la query per vedere se torna ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 20-01-2008, 08:16   #5
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Riguardando la tua query non mi torna, bisogna anche costruire l'associazione fra il pilota di X ed il suo aereo, e solo a quel punto si può filtrare sullo stesso nome della portaerei:

SELECT X.nome
FROM PILOTA AS X, PILOTA AS Y, AEREO AS Z, AEREO AS K
WHERE Y.nome = 'Pippo'
AND Y.codice_aereo = Z.codice_aereo
AND X.codice_aereo = K.codice_aereo
AND K.nome_portaerei = Z.nome_portaerei;
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 20-01-2008, 10:21   #6
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2688
ti ringrazio...e circa l'altra query? anche quella mi crea problemi

Per ogni aereo si vuole sapere quante volte è atterrato su una portaerei diversa da quella di
appartenenza.

Ultima modifica di D4rkAng3l : 20-01-2008 alle 10:25.
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 20-01-2008, 10:54   #7
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Per quello devi usare il group by...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 20-01-2008, 14:34   #8
newuser
Senior Member
 
L'Avatar di newuser
 
Iscritto dal: Oct 1999
Messaggi: 1565
Codice:
select aereo.codice,
	 count(atterraggio.id_atterraggio)
froma aereo, atterraggio
where aereo.codice=atterraggio.codice_aereo
	and aereo.nome_portaerei<>atterraggio.nome_portaerei
group by aereo.codice
Così facendo mancano però gli aerei che non hanno fatto atterraggi su portaerei diverse da quella loro assegnata, è possibile aggiungerla usando gli alias.
newuser è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla Hyundai Ioniq 9: dopo due settimane di test non ...
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e...
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio Motorola edge 70 Fusion FIFA World Cup 26 Editio...
Renault 5 elettrica al giudizio definitivo: solo stupore iniziale o premi meritati? Renault 5 elettrica al giudizio definitivo: solo...
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix HONOR CHOICE Projector Air Pro: piccolo, portati...
Ristrutturazione in casa EA: licenziamen...
Cloudflare avverte: gli umani rischiano ...
Amazon ha costruito un data center da 2 ...
Smartphone premium oltre i 600$: Apple d...
La RAM costa come nel 2007: 20 anni di r...
Huawei presenta MateBook Pro S: laptop u...
Pieghevoli, la svolta che tutti aspettav...
Sempre più manager tech sognano di molla...
IA agentica: Qwen3.8 Max davanti ai big ...
Trump deciso a bloccare l'eolico offshor...
TOP 12 offerte del weekend Amazon: i nuo...
Enhanced PSSR sarà attivo per imp...
Polti Vaporetto SV440 Double, la scopa a...
Smart TV a 129€ su Amazon: è un H...
Proseguono le operazioni di ripristino d...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 05:48.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v