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
App. Visual Studio 6.0
Problemi di selezione
martedì 02 gennaio 2007 - 20.48
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
ken87
Profilo
| Junior Member
67
messaggi | Data Invio:
mar 2 gen 2007 - 20:48
Ho due tabelle a e b
Devo fare unione
Le tabelle hanno dipendenti e un campo impiegato o oprerai
Dopo la union Mi puo capitare che nella tabella a il dipendente sia operaio e nel altra impiegato
Come posso fare a dirgli che se capita di pescarmi dalla tabella b?
sanbiz
Profilo
| Senior Member
208
messaggi | Data Invio:
mer 3 gen 2007 - 12:59
>Ho due tabelle a e b
>Devo fare unione
>
>Le tabelle hanno dipendenti e un campo impiegato o oprerai
>Dopo la union Mi puo capitare che nella tabella a il dipendente
>sia operaio e nel altra impiegato
>Come posso fare a dirgli che se capita di pescarmi dalla tabella
>b?
Mancano un po' di informazioni come ad esempio qual'è la tua base dati.
Sarebbe, inoltre, buona cosa fornire anche un esempio della struttura dei dati che stai utilizzando ed il maggior numero di informazioni sugli strumenti in tuo possesso. (Stai usando VB6 suppongo)
Veniamo al problema: non so se ho capito bene, ma tu hai due tabelle con campi uguali, contenenti un "dipendente" ed un "campo" che indica il ruolo.
Quindi nella tabella a potrei avere un impiegato che compare anche in tabella b, ma con campo ruolo differente giusto?
In questo caso tu vorresti che il ruolo fosse quello della tabella b. Sto sbagliando?
Proviamo a fare un esempio con SQL Server
set nocount on
use tempdb
-- Creo le due tabelle
create table a
(
Dipendenti varchar(50),
Campo1 varchar(25)
)
create table b
(
Dipendenti varchar(50),
Campo1 varchar(25)
)
-- Immetto qualche valore di esempio
insert into a values ('Sandro', 'Operaio')
insert into a values ('Michele', 'Operaio')
insert into a values ('Luca', 'Impiegato')
insert into a values ('Lorenzo', 'Impiegato')
insert into b values ('Sandro', 'Impiegato')
insert into b values ('Michele', 'Operaio')
insert into b values ('Luca', 'Impiegato')
insert into b values ('Lorenzo', 'Impiegato')
-- Eseguo la select (join) tra le due tabelle
select
a.dipendenti,
case
when a.campo1 <> b.campo1 then b.campo1
else a.campo1
end as 'campo1'
from a join b on a.dipendenti = b.dipendenti
/* Output
dipendenti campo1
-------------------------------------------------- -------------------------
Sandro Impiegato
Michele Operaio
Luca Impiegato
Lorenzo Impiegato
*/
-- Elimino le tabelle
drop table a
drop table b
--
Sandro Bizioli
http://blogs.dotnethell.it/sandro/
ken87
Profilo
| Junior Member
67
messaggi | Data Invio:
mer 3 gen 2007 - 22:57
il database e in acess il programma che sto facendo e in visual basic 2005.
Non sapevo che sql avesse istruzioni else when case ecc.
Ma usando acess e visual bsic si possono usare.
Mi Illumini su queste possibilita di linguaggio? ero rimasto allte 4 istruzioni strimzite del linguaggio
sanbiz
Profilo
| Senior Member
208
messaggi | Data Invio:
gio 4 gen 2007 - 08:59
>il database e in acess il programma che sto facendo e in visual
>basic 2005.
Ok.
>Non sapevo che sql avesse istruzioni else when case ecc.
>Ma usando acess e visual bsic si possono usare.
Non proprio, ma ci sono soluzioni simili anche in Access
>Mi Illumini su queste possibilita di linguaggio? ero rimasto
>allte 4 istruzioni strimzite del linguaggio
Che linguaggio? SQL o VB? E poi tanto striminzite non sono...
Sulla creazione delle tabelle, penso non ci siano problemi nè sull'inserimento dei dati in access.
Partiamo, quindi, dalla situazione in cui tu avrai il tuo database con le tue due tabelle a e b e qualche riga di dati in esse.
La select, a questo punto, potrebbe essere così formulata:
select
a.dipendenti,
iif(a.campo1 <> b.campo1, b.campo1, a.campo1) as Campo1
from a
left join b on a.dipendenti = b.dipendenti
--
Sandro Bizioli
http://blogs.dotnethell.it/sandro/
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 !