Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : LPAD, RPAD avec SQl server? [ Archives / Problème avec une fonction ] (karn)

lundi 27 décembre 2004 à 17:28:46 | LPAD, RPAD avec SQl server?

karn

Bonjour,
Il y a t'il un equivalent aux fonctionx LPAD,RPAD avec sql server?

mardi 28 décembre 2004 à 19:23:48 | Re : LPAD, RPAD avec SQl server?

fabrice69

Administrateur CodeS-SourceS
Pas exactement, en fait LPAD et RPAD permettent de tronquer une string sur X charactere et si besoin de completer par une chaine donnée.
cf :
- http://www.techonthenet.com/oracle/functions/rpad.htm

Sous SQL Server, les fonctions existent pour une partie de ces demandes :
RIGHT et LEFT

Cf Aide MSDN :
-------
RIGHT
Renvoie la partie d'une chaîne de caractères commençant au nombre de caractères spécifié par integer_expression, à partir de la droite.

Syntaxe
RIGHT ( character_expression , integer_expression )

Arguments
character_expression

Expression d'une donnée caractère. character_expression peut être une constante, une variable ou une colonne de données de type caractère ou binaire.

integer_expression

Position de départ, exprimée par un nombre entier positif. Si integer_expression est négative, une erreur est renvoyée.

Type des valeurs renvoyées
varchar

character_expression doit appartenir à un type de données explicitement convertible en varchar. Sinon, utilisez l'opérateur CAST pour convertir explicitement character_expression.

Notes
Les niveaux de compatibilité peuvent affecter les valeurs renvoyées. Pour plus d'informations, voir sp_dbcmptlevel.

Exemple
Cet exemple renvoie les cinq derniers caractères (les plus à droite) du prénom de chaque auteur.

USE pubs
GO
SELECT RIGHT(au_fname, 5)
FROM authors
ORDER BY au_fname
GO

Voici le jeu de résultats obtenu :

------------------
raham
Akiko
lbert

-----

Et LEFT :
-----
LEFT
Renvoie la partie de la chaîne character_expression commençant au premier caractère et contenant le nombre de caractères spécifié par integer_expression.

Syntaxe
LEFT ( character_expression , integer_expression )

Arguments
character_expression

Expression de caractères ou de données binaires. character_expression peut être une constante, une variable ou une colonne. character_expression doit être d'un type de données qui peut être converti implicitement en varchar. Dans le cas contraire, utilisez la fonction CAST pour convertir explicitement character_expression.

integer_expression

Nombre entier positif. Si integer_expression est négatif, une chaîne nulle est renvoyée.

Type des valeurs renvoyées
varchar

Notes
Les niveaux de compatibilité peuvent affecter les valeurs renvoyées. Pour plus d'informations sur les niveaux de compatibilité, voir sp_dbcmptlevel.

Exemple
A. Utilisation de LEFT avec une colonne
Cet exemple renvoie les cinq caractères de gauche du titre de chaque livre.

USE pubs
GO
SELECT LEFT(title, 5)
FROM titles
ORDER BY title_id
GO

Voici le jeu de résultats obtenu :

-----
The B
Cooki
You C
Strai

-----

Pour la completion (si tu recherches aussi cette partie, je pense qu'il faut voir du coté des fonction personnalisées de SQL Server.


Romelard Fabrice (Alias F___)

mercredi 29 décembre 2004 à 14:02:17 | Re : LPAD, RPAD avec SQl server?

karn

Réponse acceptée !
Merci j'ai reussi a trouver ca dans l'aide :


Cet exemple complète à gauche des nombres dans la limite d'une longueur spécifiée lors de leur conversion d'un type de données numérique en type caractère ou Unicode.

USE Northwind
GO
DROP TABLE t1
GO
CREATE TABLE t1
(
c1 varchar(3),
c2 char(3)
)
GO
INSERT INTO t1 VALUES ('2', '2')
INSERT INTO t1 VALUES ('37', '37')
INSERT INTO t1 VALUES ('597', '597')
GO
SELECT REPLICATE('0', 3 - DATALENGTH(c1)) + c1 AS [Varchar Column],
REPLICATE('0', 3 - DATALENGTH(c2)) + c2 AS [Char Column]
FROM t1
GO




lundi 30 mai 2005 à 06:12:03 | Re : LPAD, RPAD avec SQl server?

IgorN2004

Q.Il y a t'il un equivalent aux fonctionx LPAD,RPAD avec sql server? 
R.Bien sûr !

 Les fonctions Transact-SQL  pour  le traitement  des chaînes  de caractères    
Mesdames et Messieurs,

Je bien voudrais vous proposer les fonctions Transact-SQL qui sont les suivants

GETWORDCOUNT() Counts the words in a string
GETWORDNUM() Returns a specified word from a string
AT() Returns the beginning numeric position of the first occurrence of a character expression within another character expression, counting from the leftmost character
RAT() Returns the numeric position of the last (rightmost) occurrence of a character string within another character string
CHRTRAN()   Replaces each character in a character expression that matches a character in a second character expression with the corresponding character in a third character expression
STRFILTER() Removes all characters from a string except those specified
OCCURS() Returns the number of times a character expression occurs within another character expression (include overlaps)
PADL() Returns a string from an expression, padded with spaces or characters to a specified length on the left side
PADR() Returns a string from an expression, padded with spaces or characters to a specified length on the right side
PADC() Returns a string from an expression, padded with spaces or characters to a specified length on the both sides
PROPER() Returns from a character expression a string capitalized as appropriate for proper names
RCHARINDEX()  Is similar to a built-in function Transact-SQL charindex but the search of which is on the right
ARABTOROMAN() Returns the character Roman number equivalent of a specified numeric expression (de 1 à 3999)
ROMANTOARAB() Returns the number equivalent of a specified character Roman number expression  (de I à MMMCMXCIX)

AT, PADL, PADR, CHRTRAN, PROPER sont semblables aux fonctions Oracle PL/SQL INSTR, LPAD, RPAD, TRANSLATE, INITCAP

Plus de 2000 personnes ont déjà téléchargé ces fonctions. Qui sait, peut-être seront-ils utiles pour vous ?

Pour plus d`information, veuillez visiter [ Lien ]

Veuillez télécharger  le fichier
[ Lien ]

Veuillez agréer, Mesdames et Messieurs, l'expression de mes meilleurs sentiments.

.



Cette discussion est classé dans : sql, server, lpad, rpad


Répondre à ce message

Sujets en rapport avec ce message

Changer le propriétaire d'une SP sous SQL Server [ par Nix ] Salut tout le monde,Ce soir on m'a posé une colle. Je ne suis pas expert SQL Server et je ne sais pas répondre à cette question.La question est simple Oracle vs Sql server vs Access [ par Fildomen ] salutpouvez-vous me donner le comparatif entre ces trois (Oracle,Sql server,Access)?? et qui es le plus rapide entre eux(un classement)?mercihttp://ww utilisation de sql server?? [ par Fildomen ] salutj'ai installé mon sql server 2000, sur un windows server 2003 datacenter, et là , j'ai consataté que c'est difficile de l'utiliser, je sais même Problème SQLSERVER/php [ par LeJulius ] Je travaille actuellement sous SQL SERVER 2000 en lien avec du PHP 4.2.0 Mon problème est le suivant :Mes tables sql contiennent des caractères accent Autoincrementation dans SQL server [ par superismali ] SuperismaliSlt,J'ai un pb pour créer une auto incrementation d'un champ nommé idsite dans une table ke G nommé référencement.Bon y at il qq1 ki pe m'a sql server ou Mysql [ par snoopcool ] Bonjour tous le monde!!!Mon proleme est le suivant. J'ai une base de donnée que je ve mettre sur un serveur avec une vingtaine de poste à connecte et Problème avec l'opérateur LIKE dans SQL SERVER [ par oluha ] BonjourJ'ai un petit problème avec une procédure stockée sur SQL server.Dans celle ci j'utilise une requete de type :select count(*) from matable wher DATETIME SQL SERVER AU SECOURS !!!!!! [ par MACHOMAN ] bonjour, j'ai plusieurs pb avec les datetime sous sql server : 1 - j'ai deux champs datetime, dans le premier il y a une date dans le second une heure Fonction Difference (soundex) SQL server [ par oluha ] BonjourJ'ai besoin d'utiliser la fonction Difference (qui se base sur le soundex) mais je trouve qu'elle n'est pas assez précise du fait que le sounde sql server 2000 trés urgent!!! [ par abari ] dans une page asp j'exécute une requette d'insertion dont j'insert une chaine vide dans un champ date,mais sql server2000 fais une conversion de cette


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,468 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.