PDA

View Full Version : Help stored procedure SQL


darks79
27-02-2006, 13:50
Buongiorno ragazzi!
avrei bisogno di una dritta su come implementare una sp in SQL
che faccia:

ho 2 tabelle a e b entrambe con campo cognome

devo ricercare tutti i "cognome" presenti in tabella a nella tabella b

quindi devo ricercare per ogni record di TABELLA A la presenza di quel record in TABELLA B
e se lo trovo andarlo ad inserire in un altra tabella.

AIUTOOOOOOOO!!!

Nightingale
27-02-2006, 14:28
Su che DB sei?

Direi che ti devi fare un cursore sulla prima tabella; per ogni riga trovata farti la select su tabella B, per quel cognome. Se la trovi, ti fai la insert nell'altra tabella...

darks79
27-02-2006, 15:04
DB SqlServer 2000

io ho fatto cosi come hai detto tu ma han detto che è poco performante...

Nightingale
27-02-2006, 15:31
DB SqlServer 2000

io ho fatto cosi come hai detto tu ma han detto che è poco performante...

Non conosco SQL server... Io lavoro su Oracle; sul quale potrei fare una cosa tipo:

INSERT INTO TAB_C AS
SELECT A.id, A.nome, etc
FROM TAB_A A, TAB_B B
WHERE A.cognome = B.cognome;

Oppure, se non puoi fare la INSERT SELECT, fai il curose come la join delle due tabelle.

Emyl
28-02-2006, 20:22
Si, si puo' fare anche su Sql Server, basta togliere la parola chiave AS (non si usa).

I cursori, a differenza di Oracle, sono MOLTO lenti, percio' chi ti aveva detto che la prima query e' poco performante aveva ragione.

Ciao :)

Nightingale
01-03-2006, 09:52
Si, si puo' fare anche su Sql Server, basta togliere la parola chiave AS (non si usa).

I cursori, a differenza di Oracle, sono MOLTO lenti, percio' chi ti aveva detto che la prima query e' poco performante aveva ragione.

Ciao :)

Ok... Io appunto non ho alcuna esperienza in SQL Serv :)
Grazie per la spiegazine dunque. :D