54 votes

Comment obtenir les deux premiers caractères d'une chaîne dans une requête Oracle?

Supposons que j'ai un nom de colonne OrderNo avec la valeur AO025631 dans une table shipment .

J'essaie d'interroger la table afin de ne pouvoir obtenir que les deux premiers caractères de la valeur de la colonne, c'est-à-dire AO .

Puis-je le faire dans la requête SQL elle-même ?

89voto

manji Points 26778

SUBSTR (documentation) :

 SELECT SUBSTR(OrderNo, 1, 2) As NewColumnName from shipment

Lorsqu'elle est sélectionnée, c'est comme n'importe quelle autre colonne. Vous devez lui donner un nom (avec le As ), et vous pouvez sélectionner d'autres colonnes dans la même instruction :

 SELECT SUBSTR(OrderNo, 1, 2) As NewColumnName, column2, ... from shipment

11voto

Tony Andrews Points 67363
select substr(orderno,1,2) from shipment;

Vous pouvez également consulter la documentation .

9voto

thomas Points 3739

regarde ici

 SELECT SUBSTR('Take the first four characters', 1, 4) FIRST_FOUR FROM DUAL;

8voto

Datajam Points 2770

Facile:

 SELECT SUBSTR(OrderNo, 1, 2) FROM shipment;

7voto

Farshid Zaker Points 1081

Utilisez simplement la fonction SUBSTR. Il prend 3 paramètres : le nom de la colonne de chaîne, l'index de départ et la longueur de la sous-chaîne :

 select SUBSTR(OrderNo, 1, 2) FROM shipment;

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X