Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
Un proiettore economico, che fa della portabilità e immediatezza i suoi punti di forza. Adatto per una camera da letto o per la casa vacanze, è basato su sistema proprietario Linux ma offre piena compatibilità ufficiale a Netflix
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
Un notebook sviluppato in collaborazione con GoPro ma che risponde al meglio alle necessità di tutti coloro che creano contenuti video: robustezza, design, potenza di calcolo e funzionalità si abbinano al meglio tra di loro, pur se a prezzo di un costo elevato per via della tanta memoria onboard
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090
Ho affidato ai due modelli lo stesso mestiere ma non lo stesso identico prompt: trasformare una storia illustrata in un video usando una RTX 3090 e modelli locali. Ne sono usciti due film, due applicazioni e due idee opposte di efficienza. Fucina, progettata con Fable 5, colpisce di più nei primi secondi. Storyboard Studio, costruito con ChatGPT/Codex, regge meglio sulla distanza e vince il confronto complessivo, ma di stretta misura
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-07-2015, 10:26   #1
lore11
Junior Member
 
Iscritto dal: Sep 2014
Messaggi: 22
[SQL] dubbio query

ho un dubbio riguardo alle query.

avendo le tre tabelle:
Prenotazioni(CodCli, CodAl, Acconto, Camera)
Clienti(CodCli, Nome, Cognome, Eta)
Alberghi(CodAl, Città, Via)
devo fare una query che permette di visualizzare "Nome e Cognome di coloro che hanno prenotato la stanza 30".

io la farei così:
Codice:
SELECT nome, cognome
FROM clienti
WHERE codcli IN (SELECT codicli FROM prenotazioni WHERE camera="30")
tuttavia, guardando esercizi svolti da altri studenti del mio corso, alcuni la farebbero così:
Codice:
SELECT nome, cognome
FROM clienti, prenotazioni
WHERE clienti.codcli=prenotazioni.codcli AND camera="30";
sono giusti entrambi i metodi o solo uno dei due?? (perchè?)

grazie mille a tutti!!
lore11 è offline   Rispondi citando il messaggio o parte di esso
Old 13-07-2015, 11:51   #2
Mex87
Member
 
Iscritto dal: Oct 2010
Messaggi: 52
Ciao, spero di non scrivere vaccate nella risposta.

Le 2 query producono lo stesso risultato, ma la differenza sta che, usando l'operatore 'IN', la query annidata viene eseguita per ogni riga presente nella tabella clienti.

Mentre la seconda query è molto più efficiente perché alla fine usa un join tra le tabelle anche se non usa le parole chiavi per descrivere il Join.

EDIT: Credo di aver scritto una vaccata, forse tutto dipende dall'ottimizzazione che esegue il motore del Database

http://explainextended.com/2009/06/1...oin-vs-exists/

Ultima modifica di Mex87 : 13-07-2015 alle 11:55. Motivo: Correzioni
Mex87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-07-2015, 13:30   #3
lore11
Junior Member
 
Iscritto dal: Sep 2014
Messaggi: 22
intanto grazie!
comunque anche io credo che siano giuste entrambe, al di là dell'efficienza della query stessa (a me interessa solo che sia giusta, l'efficienza -per ora- non è valutata).

spero che qualcuno mi possa confermare questo...
lore11 è offline   Rispondi citando il messaggio o parte di esso
Old 13-07-2015, 20:35   #4
Gimli[2BV!2B]
Senior Member
 
L'Avatar di Gimli[2BV!2B]
 
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3010
Stesso risultato, personalmente considero il secondo "più corretto" perché annidare query solitamente non aiuta l'ottimizzazione, oltre a portare più facilmente a creare mostri...

Inoltre personalmente preferisco l'esplicitazione dell'inner join:
Codice:
SELECT nome, cognome
FROM clienti
INNER JOIN prenotazioni ON clienti.codcli = prenotazioni.codcli
WHERE prenotazioni.camera = "30";
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...)
Gimli[2BV!2B] è offline   Rispondi citando il messaggio o parte di esso
Old 15-07-2015, 16:14   #5
xp2400
Senior Member
 
Iscritto dal: Mar 2004
Città: RoMaNoVeNeTo
Messaggi: 757
concordo, join esplicito.

l'annidamento comporta drammi nell'ottimizzazione.
__________________
Acer m5500 (Q6600,4MB) Sapphire Ati 3850, Logitech Performance MX, Tastiera Logitech G15, Epson bx 310 FN, QNAP 419p+, WDTVLIVE, Harmony One
xp2400 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix HONOR CHOICE Projector Air Pro: piccolo, portati...
ASUS ProArt GoPro Edition è il notebook compatto per chi crea ASUS ProArt GoPro Edition è il notebook c...
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090 Fable e Sol a confronto: due cartoni animati cre...
Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile Il tablet rugged leggero e sottile: Lenovo Think...
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot AMD Advancing AI 2026: l'hardware AMD per le ela...
OpenAI taglia i prezzi di due modelli GP...
RTX Spark pronto a dominare anche i tabl...
Il primo telefono davvero senza bordi no...
DeepSeek V4-Flash, API in beta pubblica:...
La crisi delle memorie continuerà: ecco ...
Dati su disfunzione erettile e perdita d...
Arriva e-invoice, il servizio di fiskaly...
Champions League, F1 e MotoGP: ecco la p...
Amazon alza a 220 miliardi le stime sugl...
World of Warcraft e Dungeons & Drago...
AXOL Server ridisegna l'infrastruttura d...
MSI ha ucciso AMD EXPO ULL? High-Efficie...
Falso Portale dell'Automobilista ruba pa...
Apple chiude il miglior trimestre di giu...
Sony tira dritto sull'addio ai dischi Pl...
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: 03:42.


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