Requête SQL Server

J'essaye de travailler avec ma table SQL.

J'ai 2 bâtiments avec les numéros de pièce 1 – 100 dans le bâtiment 1 et 101 – 199 dans le bâtiment 2. J'ai un champ de localization (que je viens de créer) et je veux lancer une requête pour le remplir avec 'Bâtiment 1' ou 'Bâtiment 2' selon le numéro de la pièce dans le champ 'Pièce'.

Merci beaucoup pour votre aide.

Cordialement

Scott

Vous pouvez utiliser Case pour mettre à jour votre tableau:

 Update your_table Set location = Case When room_number <= 100 Then 'Building 1' Else 'Building 2' End; 

Si tous vos numéros de pièce ont trois numbers suivis par d'autres caractères, l'utilisation de la subssortingng devrait fonctionner:

 Case When Cast( Subssortingng( room_number, 1, 3 ) As Int ) <= 100 Then 

Comme toutes vos pièces ne commencent pas par trois numbers ( 1A ), vous pouvez utiliser PatIndex pour find la longueur du nombre:

 Case When Cast( Subssortingng( room_number, 1, PatIndex( '%[AZ]%', room_number || 'A' ) - 1 ) As Int ) <= 100 Then 

Je concatène le A pour m'assurer qu'il fonctionne également avec des numéros de pièce numériques.