Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Query strana, join + via doppioni
mercoledì 13 aprile 2011 - 13.36
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
ngald
Profilo
| Newbie
2
messaggi | Data Invio:
mer 13 apr 2011 - 13:36
chiederei una consulenza su una query
dovrei fare una query di select da 2 tabelle Importo e Persone.
select
i. importo, p.userid, p.nome, p.cognome
from Importo i, Persone p
where
.......
and i.userid=p.userid
Persone ha una chiave esterna Userid che la lega a Importo
Vorrei estrarre oltre al resto Nome e Cognome da Persone
Ci possono essere record Persone per stessa chiave Userid con NomeCognome diversi.
--------- persone -----------
YYI1234, Paolo, Rossi
YYI1234, Andrea,Verdi
Vorrei estrarre e legare a Importo solo il primo record (rownum=1) di Persone. Mi prendo solo il primo nome per importo.
Altrimenti verrebbere righe doppie tipo
100 , yyi1234, Paolo, Rossi
100 , yyi1234, Andrea,Verdi
123 , yyi9999, Aldo,Bianchi
Io vorrei invece
100 , yyi1234, Paolo, Rossi
123 , yyi9999, Aldo,Bianchi
La difficolta', almeno per me, sta nel fatto che la fk della join non mi permette di eliminare i doppioni nome, cognome di Persone.
Non posso nemmeno fare una select dentro alla select perche' la condizione di ricerca della subquery e' parte della join e non e'
un semplice parametro esterno.
in sostanza vorrei mantenere la join tra le tabelle ma poi tenere dalla tab Persone un solo record per ogni match.
avreste qualche suggerimento ??
grazie n
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
mer 13 apr 2011 - 14:57
>--------- persone -----------
>YYI1234, Paolo, Rossi
>YYI1234, Andrea,Verdi
Ciao,
La tabella persone ha valori duplicati per la colonna userid?
Qual è la Primary Key della tabella?
Potresti postare un esempio completo con le strutture delle tabelle comprensive di constraint (CREATE TABLE), alcune righe di prova (INSERT INTO) ed il result set finale che vorresti ottenere con quei dati?
>grazie n
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
ngald
Profilo
| Newbie
2
messaggi | Data Invio:
mer 13 apr 2011 - 15:12
Ciao,
La tabella persone ha valori duplicati per la colonna userid?
>>> SI
userid1, Paolo, Rossi
userid1, Paolino, Rossini
userid2, Andrea, Rosselli
Qual è la Primary Key della tabella?
>>> CODICE_PERSONA, SEDE, SEDE_SECONDARIA
notare che CODICE_PERSONA non è USERID
Potresti postare un esempio completo con le strutture delle tabelle comprensive di constraint (CREATE TABLE), alcune righe di prova (INSERT INTO) ed il result set finale che vorresti ottenere con quei dati?
>> ora no, ma prendi l'esempio del mio primo messaggio. E' la semplificazione schematica.
>> devo fare una join, ma prendendo nel tab Persone solo il primo record.
>grazie n
grazie n
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
mer 13 apr 2011 - 15:14
> ora no, ma prendi l'esempio del mio primo messaggio. E' la semplificazione schematica.
> devo fare una join, ma prendendo nel tab Persone solo il primo record.
"primo" e "ultimo" non hanno alcun senso in un RBDMS, ed è proprio per questo motivo ti ho chiesto di postare un esempio completo.
Quando lo posterai vedrò di capire cosa ti serve.
>grazie n
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
gsflash80
Profilo
| Junior Member
95
messaggi | Data Invio:
gio 14 apr 2011 - 11:36
mi è sembrato strano che nell'userID non sia impostato Not Duplicate, perchè nelle due tabelle Import e person, almeno la colonna userID che si trova nelle queste due tabelle, così si fa FK Not duplicate.
Sarebbe meglio che postasse le strutture di due tabelle, così potremo capire meglio.
Grazie
..:: GSFLASH ::..
http://www.gsflash.it
http://blogs.dotnethell.it/gabrieleserpi/
MCTS - ACP - OCP - ECDL - ACSP
Ubuntu 11.04/OpenSuse 10.3
Vista Seven/MacOSX SnowLeopard
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !