0
Je souhaite faire quelque chose de similaire à ci-dessous. J'ai la pseudo-logique ci-dessous. Il suffit de se demander comment implémenter ceci:T-sql range Requête
delete B
from
TableA A with (nolock), TableB B with (nolock)
where A.BeginNumber <= B.startipnum and A.Endnumber >= B.endipnum
delete A
from
TableA A with (nolock), TableB B with (nolock)
where A.BeginNumber => B.startipnum and A.Endnumber <= B.endipnum
update B
set endipnum = startnumber - 1
from
TableA A with (nolock), TableB B with (nolock)
where A.BeginNumber < B.startipnum and A.Endnumber <= B.endipnum
update B
set startipnum = endnumber + 1
from
TableA A with (nolock), TableB B with (nolock)
where A.BeginNumber >= B.startipnum and A.Endnumber > B.endipnum
données exemples
Tableau A
BeginNumber EndNumber
---------- ---------
16843009 16843009
16843009 16843010
16843009 16843013
16843009 16843016
33686020 33686024
TableB
startipnum endIPNum
---------- ---------
1488047401 1488047401
1504824617 1873923369
1890700585 1907477801
1924255017 2142358825
2159136041 2276576553
Il n'y a pas à colonnes j Entre les 2 tables. S'il vous plaît aider.
Merci!
Pouvez-vous fournir quelques lignes de données d'échantillon provenant du tableau A et du tableau B? Je ne comprends pas vraiment ce que vous devez faire. –
Je l'ai ajouté au corps général de la question ci-dessus. La mise en forme est en train de se gâter.Veuillez jeter un coup d'oeil. – sharadov
J'ai corrigé la mise en forme (placez les tables dans des blocs de code pour préserver la mise en page), donc pour les exemples de données que vous avez fournis, quels devraient être les résultats pour les requêtes 1,2,3 et 4? –