delete from tab1
where ( table_col1, table_col2, table_col2)
in ( select table_col1, table_col2, table_col2
from tab1
where cond
);
quelle est la requete equiv en T-SQL?
delete from tab1
where ( table_col1, table_col2, table_col2)
in ( select table_col1, table_col2, table_col2
from tab1
where cond
);
quelle est la requete equiv en T-SQL?
Vu que tu joint la table cible sur elle même !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 delete from tab1 where cond
A +
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
* * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *
si une ligne de tab1 exist dans un ens de lignes de tab2 je la supprime
delete from tab1
where ( col1, col2, col2)
IN ( select col1, col2, col2
from tab2
where cond
);
quelle est la requete equiv en T-SQL?
NB : Col1,col2 ...coln doivent être convertis en varchar
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 delete from tab1 where col1 + col2 + col2 IN ( select col1 + col2 + col2 from tab2 where cond );
Jaurais tendance à dire que c'est
Si je n'ai rien compris au problème, veuillez m'excuser par avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 DELETE T1 FROM TABLE1 T1 WHERE EXISTS (SELECT 1 FROM TABLE2 T2 WHERE T2.Col1 = T1.Col1 AND T2.Col2 = T1.Col2 AND [Cond])![]()
Partager