Changeset 1106
- Timestamp:
- 07/23/08 09:50:31 (4 months ago)
- Files:
-
- traduc/trunk/postgresql/func.xml (modified) (59 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
traduc/trunk/postgresql/func.xml
r1103 r1106 854 854 </row> 855 855 856 <!-- seed ?-->856 <!-- random seed : nombre servant à initialiser une séquence aléatoire --> 857 857 <row> 858 858 <entry><literal><function>setseed</function>(<type>dp</type>)</literal></entry> 859 859 <entry><type>void</type></entry> 860 <entry>initialise l a recherche pour les appels à860 <entry>initialise les appels à 861 861 <literal>random()</literal> à suivre 862 862 (valeur entre 0 et 1.0)</entry> … … 902 902 </row> 903 903 904 <!-- bucket ? --> 905 <row> 906 <entry><literal><function>width_bucket</function>(<parameter>op</parameter> <type>numeric</type>, 904 <!-- bucket : compartiment (Région de la mémoire constituée de plusieurs 905 champs, adressable en tant qu'entité.) --> 906 <row> 907 <entry><literal><function>width_bucket</function>(<parameter>opérande</parameter> <type>numeric</type>, 907 908 <parameter>b1</parameter> <type>numeric</type>, <parameter>b2</parameter> <type>numeric</type>, 908 <parameter> count</parameter> <type>int</type>)</literal></entry>909 <parameter>nombre</parameter> <type>int</type>)</literal></entry> 909 910 <entry><type>int</type></entry> 910 <entry>renvoie le jetonauquel l'<parameter>opérande</parameter> est affecté dans911 un histogramme d'équidistance à <parameter>nombre</parameter> jetons,912 les valeurs allant de <parameter>b1</parameter> à911 <entry>renvoie le compartiment auquel l'<parameter>opérande</parameter> est affecté dans 912 un histogramme d'équidistance à <parameter>nombre</parameter> 913 compartiments, les valeurs allant de <parameter>b1</parameter> à 913 914 <parameter>b2</parameter></entry> 914 915 <entry><literal>width_bucket(5.35, 0.024, 10.06, 5)</literal></entry> … … 916 917 </row> 917 918 919 <!-- SAS 20080722 : doublon 918 920 <row> 919 921 <entry><literal><function>width_bucket</function>(<parameter>op</parameter> <type>dp</type>, <parameter>b1</parameter> <type>dp</type>, <parameter>b2</parameter> <type>dp</type>, <parameter>count</parameter> <type>int</type>)</literal></entry> 920 922 <entry><type>int</type></entry> 921 <entry>renvoi t le jeton auquel est associé <parameter>operand</parameter>923 <entry>renvoie le jeton auquel est associé <parameter>op</parameter> 922 924 dans un histogramme d'équidistance avec <parameter>count</parameter> 923 925 jetons, les valeurs allant de <parameter>b1</parameter> à … … 929 931 </tgroup> 930 932 </table> 931 932 <!-- SAS::ICI, mais voir les deux questions qui précèdent --> 933 --> 934 933 935 <para> 934 Enfin, le <xref linkend="functions-math-trig-table"/> affiche les fonctions936 Pour finir, le <xref linkend="functions-math-trig-table"/> affiche les fonctions 935 937 trigonométriques disponibles. Toutes les fonctions trigonométriques prennent 936 938 des arguments et renvoient des valeurs de type <type>double precision</type>. … … 978 980 <entry><literal><function>acos</function>(<replaceable>x</replaceable>)</literal 979 981 ></entry> 980 <entry> cosinus inverse <!-- arc-cosinus ? --></entry>982 <entry>arccosinus</entry> 981 983 </row> 982 984 … … 985 987 <entry><literal><function>asin</function>(<replaceable>x</replaceable>)</literal 986 988 ></entry> 987 <entry> sinus inverse<!-- arc-sinus ? --></entry>989 <entry>arcsinus</entry> 988 990 </row> 989 991 … … 992 994 <entry><literal><function>atan</function>(<replaceable>x</replaceable>)</literal 993 995 ></entry> 994 <entry> tangente inverse<!-- arc-tangente --></entry>996 <entry>arctangente</entry> 995 997 </row> 996 998 … … 998 1000 <entry><literal><function>atan2</function>(<replaceable>y</replaceable>, 999 1001 <replaceable>x</replaceable>)</literal></entry> 1000 <entry> tangente inverse de1001 <literal><replaceable>y</replaceable>/ 1002 <replaceable>x</replaceable></literal></entry>1002 <entry> 1003 arctangente de <literal><replaceable>y</replaceable>/<replaceable>x</replaceable></literal> 1004 </entry> 1003 1005 </row> 1004 1006 … … 1054 1056 <para> 1055 1057 <acronym>SQL</acronym> définit quelques fonctions de type chaîne avec une 1056 syntaxe particulière où des mots clés sont utilisés à la place de 1058 syntaxe particulière où des mots clés sont utilisés à la place de la 1057 1059 virgule pour séparer les arguments. Des détails sont disponibles dans le 1058 1060 <xref linkend="functions-string-sql"/>. Ces fonctions sont aussi … … 1064 1066 <para> 1065 1067 Avant <productname>PostgreSQL</productname> 8.3, ces fonctions acceptent 1066 en silence les valeurs de plusieurs types de données, qui ne sont pas des1067 chaînes de caractères , grâce à la conversion implicite de ces types en des1068 valeurs de type <type>text</type>. Ces conversions ont été supprimées car1069 elles ont des comportement surprenantes. Néanmoins, l'opérateur de1070 concaténation de chaîne (<literal>||</literal>) accepte nttoujours des1071 éléments qui ne sont pas du type chaîne de caractère à partir du moment où1072 au moins un des éléments est de type chaîne, comme<xref1073 linkend="functions-string-sql"/>. Pour les autres cas, insérez une1074 conversion explicite en <type>text</type> si vous avez besoin de dupliquer1068 silencieusement des valeurs de types de données différents de 1069 chaînes de caractères. Cela parce qu'existent des transtypages implicites de 1070 ces types en <type>text</type>. Ces forçages ont été supprimés parce 1071 que leur comportement est souvent surprenant. Néanmoins, l'opérateur de 1072 concaténation de chaîne (<literal>||</literal>) accepte toujours des 1073 éléments qui ne sont pas du type chaîne de caractères, dès lors qu'au 1074 moins un des éléments est de type chaîne, comme montré dans <xref 1075 linkend="functions-string-sql"/>. Dans tous les autres cas, il faut 1076 insérer un transtypage explicite en <type>text</type> pour mimer 1075 1077 le comportement précédent. 1076 1078 </para> … … 1129 1131 <entry><type>text</type> </entry> 1130 1132 <entry> 1131 Concaténation de chaîne 1133 Concaténation de chaînes 1132 1134 <indexterm> 1133 1135 <primary>chaîne de caractères</primary> … … 1149 1151 <entry> <type>text</type> </entry> 1150 1152 <entry> 1151 Concaténation de chaîne quand un des arguments n'est pas unechaîne1153 Concaténation de chaînes avec un argument non-chaîne 1152 1154 </entry> 1153 1155 <entry><literal>'Value: ' || 42</literal></entry> … … 1408 1410 <entry><type>int</type></entry> 1409 1411 <entry>Code <acronym>ASCII</acronym> du premier octet de 1410 l'argument. Pour <acronym>UTF8</acronym>, renvoi tle code Unicode du1411 caractère. Pour les autres codages multi-octets, l'argument doit être1412 un caractère <acronym>ASCII</acronym> strict.</entry>1412 l'argument. Pour <acronym>UTF8</acronym>, renvoie le code Unicode du 1413 caractère. Pour les autres codages multi-octets, l'argument doit 1414 impérativement être un caractère <acronym>ASCII</acronym>.</entry> 1413 1415 <entry><literal>ascii('x')</literal></entry> 1414 1416 <entry><literal>120</literal></entry> … … 1435 1437 Caractère correspondant au code donné. Pour <acronym>UTF8</acronym>, 1436 1438 l'argument est traité comme un code Unicode. Pour les autres codages 1437 multi-octets, l'argument doit désignéun caractère1438 <acronym>ASCII</acronym> strict. Le caractère NULL (0) n'est pas1439 multi-octets, l'argument doit impérativement désigner un caractère 1440 <acronym>ASCII</acronym>. Le caractère NULL (0) n'est pas 1439 1441 autorisé car les types de données texte ne peuvent pas stocker ce 1440 1442 type d'octets. … … 1452 1454 <entry><type>bytea</type></entry> 1453 1455 <entry> 1454 Convertit la chaîne vers l'encodage1456 Convertit la chaîne en encodage 1455 1457 <parameter>encodage_destination</parameter>. L'encodage d'origine est 1456 spécifié par <parameter>encodage_source</parameter>. La1458 indiqué par <parameter>encodage_source</parameter>. La 1457 1459 <parameter>chaine</parameter> doit être valide pour cet encodage. 1458 1460 Les conversions peuvent être définies avec <command>CREATE … … 1472 1474 <entry><type>text</type></entry> 1473 1475 <entry> 1474 Convertit la chaîne vers l'encodage de la base. L'encodage original1476 Convertit la chaîne dans l'encodage de la base. L'encodage original 1475 1477 est indiqué par <parameter>encodage_source</parameter>. La 1476 1478 <parameter>chaîne</parameter> doit être valide pour cet encodage. … … 1488 1490 <entry><type>bytea</type></entry> 1489 1491 <entry> 1490 Convertit une chaîne vers l'encodage <parameter>encodage_destination</parameter>.1492 Convertit une chaîne en encodage <parameter>encodage_destination</parameter>. 1491 1493 </entry> 1492 1494 <entry><literal>convert_to( 'un texte', 'UTF8')</literal></entry> … … 1557 1559 <entry><type>int</type></entry> 1558 1560 <entry> 1559 Nombre de caractères d ans<parameter>chaine</parameter> dans1561 Nombre de caractères de <parameter>chaine</parameter> dans 1560 1562 l'<parameter>encodage</parameter> donné. La <parameter>chaine</parameter> 1561 1563 doit être valide dans cet encodage. … … 1575 1577 <entry><type>text</type></entry> 1576 1578 <entry> 1577 Remplit <parameter>chaîne</parameter> pour avoir une chaîne de longueur1579 Complète <parameter>chaîne</parameter> à 1578 1580 <parameter>longueur</parameter> en ajoutant les caractères 1579 1581 <parameter>remplissage</parameter> en début de chaîne (une espace par défaut). Si … … 1664 1666 <entry><type>setof text[]</type></entry> 1665 1667 <entry> 1666 Renvoi ttoutes les sous-chaînes capturées résultant d'une correspondance1667 avec une expression rationnelle POSIX avec<parameter>chaine</parameter>.1668 Renvoie toutes les sous-chaînes capturées résultant d'une correspondance 1669 entre l'expression rationnelle POSIX et <parameter>chaine</parameter>. 1668 1670 Voir <xref linkend="functions-posix-regexp"/> pour plus d'informations. 1669 1671 </entry> … … 1710 1712 <parameter>nombre</parameter> <type>int</type>)</literal></entry> 1711 1713 <entry><type>text</type></entry> 1712 <entry>R epète le texte <parameter>chaîne</parameter> <parameter>nombre</parameter> fois</entry>1714 <entry>Répète le texte <parameter>chaîne</parameter> <parameter>nombre</parameter> fois</entry> 1713 1715 <entry><literal>repeat('Pg', 4)</literal></entry> 1714 1716 <entry><literal>PgPgPgPg</literal></entry> … … 1738 1740 <entry><type>text</type></entry> 1739 1741 <entry> 1740 Complète <parameter>chaîne</parameter> jusqu'à obtenir une longueur de1742 Complète <parameter>chaîne</parameter> à 1741 1743 <parameter>longueur</parameter> caractères en ajoutant les caractères 1742 <parameter>remplissage</parameter> (une espace par défaut). Si la1744 <parameter>remplissage</parameter> à la fin (une espace par défaut). Si la 1743 1745 <parameter>chaîne</parameter> a une taille supérieure à 1744 <parameter>longueur</parameter>, elle est tronquée .1746 <parameter>longueur</parameter>, elle est tronquée (à gauche). 1745 1747 </entry> 1746 1748 <entry><literal>rpad('hi', 5, 'xy')</literal></entry> … … 1851 1853 </table> 1852 1854 1853 1854 1855 <table id="conversion-names"> 1855 1856 <title>Conversions intégrées</title> … … 1866 1867 le nom officiel de l'encodage source avec tous les caractères non 1867 1868 alpha-numériques remplacés par des tirets bas suivi de 1868 <literal>_to_</literal> suivi par lenom de l'encodage cible ayant1869 <literal>_to_</literal> suivi du nom de l'encodage cible ayant 1869 1870 subit le même traitement que le nom de l'encodage source. 1870 1871 Il est donc possible que les noms varient par rapport aux noms 1871 d'encodage personnalisés. .1872 d'encodage personnalisés. 1872 1873 </para> 1873 1874 </footnote> … … 2728 2729 <entry><literal><function>octet_length</function>( <parameter>chaîne</parameter>)</literal></entry> 2729 2730 <entry><type>int</type></entry> 2730 <entry>Nombre d'octets d ansune chaîne binaire</entry>2731 <entry>Nombre d'octets d'une chaîne binaire</entry> 2731 2732 <entry><literal>octet_length( E'jo\\000se'::bytea)</literal></entry> 2732 2733 <entry><literal>5</literal></entry> … … 2761 2762 <entry><type>bytea</type></entry> 2762 2763 <entry> 2763 Positionne un octet de la chaîne .2764 Positionne un octet de la chaîne 2764 2765 <indexterm> 2765 2766 <primary>set_byte</primary> … … 2865 2866 <entry><type>text</type></entry> 2866 2867 <entry> 2867 Code la chaîne binaire en sa représentation en <acronym>ASCII</acronym>2868 seul.Les types supportés sont <literal>base64</literal>,2868 Code la chaîne binaire en sa représentation <acronym>ASCII</acronym>. 2869 Les types supportés sont <literal>base64</literal>, 2869 2870 <literal>hex</literal>, <literal>escape</literal>. 2870 2871 </entry> … … 3010 3011 De plus, il est possible de convertir des valeurs intégrales vers ou 3011 3012 depuis le type <type>bit</type>. 3012 Quelque exemples :3013 Quelques exemples : 3013 3014 <programlisting>44::bit(10) <lineannotation>0000101100</lineannotation> 3014 3015 44::bit(3) <lineannotation>100</lineannotation> … … 3024 3025 Avant <productname>PostgreSQL</productname> 8.0, la conversion d'un entier 3025 3026 en <type>bit(n)</type> copiait les <literal>n</literal> bits les plus à 3026 gauche de l'entier alors que, maintenant, cela consiste à copierles3027 <literal>n</literal> bits les plus à droite. De plus, convertirun entier3027 gauche de l'entier. Désormais, ce sont les <literal>n</literal> bits les 3028 plus à droite qui sont copiés. De plus, la conversion d'un entier 3028 3029 en une chaîne de bits plus grande que l'entier lui-même 3029 3030 étend l'entier, avec signature, vers la gauche. … … 3055 3056 <tip> 3056 3057 <para> 3057 Si des correspondances de motif qui vont au delà sont nécessaires, il3058 fau draconsidérer l'écriture d'une fonction en Perl ou Tcl.3058 Si un besoin de correspondances de motif va au-delà, il 3059 faut considérer l'écriture d'une fonction en Perl ou Tcl. 3059 3060 </para> 3060 3061 </tip> … … 3078 3079 <function>LIKE</function> renvoie true et vice versa. Une expression 3079 3080 équivalente est <literal>NOT (<replaceable>chaîne</replaceable> LIKE 3080 <replaceable>motif</replaceable>)</literal> ).3081 <replaceable>motif</replaceable>)</literal>.) 3081 3082 </para> 3082 3083 … … 3107 3108 <para> 3108 3109 Pour faire correspondre un vrai tiret bas ou un vrai signe de pourcentage 3109 sans qu'ils remplacentd'autres caractères, le caractère correspondant dans3110 sans correspondance avec d'autres caractères, le caractère correspondant dans 3110 3111 <replaceable>motif</replaceable> doit être précédé du caractère 3111 3112 d'échappement. Par défaut, il s'agit de l'antislash, mais un autre … … 3120 3121 antislash, il faut écrire deux antislashs dans l'instruction SQL (en 3121 3122 supposant que la syntaxe d'échappement de chaînes soit utilisée, voir 3122 <xref linkend="sql-syntax-strings"/>). Donc, pour écrire un motif3123 <xref linkend="sql-syntax-strings"/>). Ainsi, pour écrire un motif 3123 3124 qui corresponde effectivement à un antislash littéral nécessite l'écriture 3124 3125 de quatre antislash dans l'instruction. Tout cela peut être évité en … … 3178 3179 L'opérateur <function>SIMILAR TO</function> renvoie true ou false 3179 3180 selon que le motif correspond ou non à la chaîne donnée. 3180 Il est assez similaire à<function>LIKE</function> à la différence qu'il interprète le3181 Il se rapproche de <function>LIKE</function> à la différence qu'il interprète le 3181 3182 motif en utilisant la définition SQL d'une expression rationnelle. Les 3182 3183 expressions rationnelles SQL sont un curieux mélange de la notation … … 3188 3189 À l'instar de <function>LIKE</function>, l'opérateur <function>SIMILAR 3189 3190 TO</function> ne réussit que si son motif correspond à la chaîne 3190 entière ; ceci ne ressemble pas auxpratiques habituelles des3191 entière ; ceci en désaccord avec les pratiques habituelles des 3191 3192 expressions rationnelles où le modèle peut se situer n'importe où dans la 3192 chaîne. Ainsicomme <function>LIKE</function>, <function>SIMILAR3193 chaîne. Tout comme <function>LIKE</function>, <function>SIMILAR 3193 3194 TO</function> utilise <literal>_</literal> et <literal>%</literal> comme caractères 3194 joker dénotant respectivement tout caractère unique et toute chaîne (ils sont3195 joker représentant respectivement tout caractère unique et toute chaîne (ils sont 3195 3196 comparables à <literal>.</literal> et <literal>.*</literal> des expressions 3196 3197 rationnelles compatibles POSIX). … … 3206 3207 <listitem> 3207 3208 <para> 3208 <literal>|</literal> dénote une alternative (une des deux3209 <literal>|</literal> représente une alternative (une des deux 3209 3210 alternatives) ; 3210 3211 </para> … … 3212 3213 <listitem> 3213 3214 <para> 3214 <literal>*</literal> dénote la répétition des éléments précédents, 0 ou3215 <literal>*</literal> représente la répétition des éléments précédents, 0 ou 3215 3216 plusieurs fois ; 3216 3217 </para> … … 3218 3219 <listitem> 3219 3220 <para> 3220 <literal>+</literal> dénote la répétition des éléments précédents, une3221 <literal>+</literal> représente la répétition des éléments précédents, une 3221 3222 ou plusieurs fois ; 3222 3223 </para> … … 3244 3245 Comme avec <function>LIKE</function>, un antislash désactive la signification 3245 3246 spéciale de tous les méta-caractères ; un autre caractère 3246 d'échappement peut être spécifié avec <literal>ESCAPE</literal>.3247 d'échappement peut être indiqué avec <literal>ESCAPE</literal>. 3247 3248 </para> 3248 3249 … … 3431 3432 sous-chaîne source correspondante doit être insérée. Elle peut aussi 3432 3433 contenir <literal>\&</literal> pour indiquer que la sous-chaîne 3433 correspondantau motif entier doit être insérée. On écrit3434 qui correspond au motif entier doit être insérée. On écrit 3434 3435 <literal>\\</literal> pou placer un antislash littéral dans 3435 3436 le texte de remplacement (comme toujours, les … … 3457 3458 3458 3459 <para> 3459 La fonction <function>regexp_matches</function> renvoi ttoutes les3460 La fonction <function>regexp_matches</function> renvoie toutes les 3460 3461 sous-chaînes capturées résultant de la correspondance avec une 3461 expression rationnelle POSIX. Elle a la syntaxe suivante :3462 expression rationnelle POSIX. Elle a la syntaxe : 3462 3463 <function>regexp_matches</function>(<replaceable>chaine</replaceable>, <replaceable>modele</replaceable> 3463 3464 <optional>, <replaceable>options</replaceable> </optional>). 3464 3465 S'il n'y a pas de correspondance avec <replaceable>modele</replaceable>, 3465 la fonction ne renvoi taucune ligne. S'il y a une correspondance, la3466 fonction renvoi tun tableau de texte dont l'élément3466 la fonction ne renvoie aucune ligne. S'il y a une correspondance, la 3467 fonction renvoie un tableau de texte dont l'élément 3467 3468 <replaceable>n</replaceable> est la sous-chaîne en correspondance avec la 3468 <replaceable>n</replaceable>-ième sous-expression entre parenthèse du3469 <replaceable>n</replaceable>-ième sous-expression entre parenthèses du 3469 3470 modèle (sans compter les parenthèses <quote>non capturantes</quote> ; 3470 3471 voir ci-dessous pour les détails). Si le modèle ne contient aucune … … 3472 3473 seul élément représentant la sous-chaîne correspondant au modèle complet. 3473 3474 Le paramètre <replaceable>options</replaceable> est une chaîne optionnelle 3474 contenant zéro ou plus d'options surune lettre, modifiant ainsi le3475 comportement de la fonction. L'option <literal>g</literal> faitque la3475 contenant zéro ou plus options d'une lettre, modifiant ainsi le 3476 comportement de la fonction. L'option <literal>g</literal> indique que la 3476 3477 fonction trouve chaque correspondance dans la chaîne, pas seulement la 3477 première, et renvoi tune ligne pour chaque correspondance. Les autres3478 première, et renvoie une ligne pour chaque correspondance. Les autres 3478 3479 options supportées sont décrites dans <xref 3479 3480 linkend="posix-embedded-options-table"/>. … … 3511 3512 <optional>, <replaceable>options</replaceable> </optional>). 3512 3513 S'il n'y a pas de correspondance avec le <replaceable>modele</replaceable>, 3513 la fonction renvoi tla <replaceable>chaine</replaceable>. S'il y a au3514 moins une correspondance, pour chaque correspondance, il renvoitle3514 la fonction renvoie la <replaceable>chaine</replaceable>. S'il y a au 3515 moins une correspondance, pour chaque correspondance, elle renvoie le 3515 3516 texte à partir de la fin de la dernière correspondance (ou le début de la 3516 3517 chaîne) jusqu'au début de la correspondance. Quand il ne reste plus de 3517 correspondance, il renvoitle texte depuis la fin de la dernière3518 correspondance, elle renvoie le texte depuis la fin de la dernière 3518 3519 correspondance jusqu'à la fin de la chaîne. Le paramètre 3519 3520 <replaceable>options</replaceable> est une chaîne optionelle contenant zéro 3520 ou plus d'options surun caractère, modifiant ainsi le comportement de la3521 ou plus options d'un caractère, modifiant ainsi le comportement de la 3521 3522 fonction. 3522 3523 <function>regexp_split_to_table</function> supporte les options décrites … … 3527 3528 La fonction <function>regexp_split_to_array</function> se comporte de la 3528 3529 même façon que <function>regexp_split_to_table</function>, sauf que 3529 <function>regexp_split_to_array</function> renvoi tson résultat en tant3530 <function>regexp_split_to_array</function> renvoie son résultat en tant 3530 3531 que tableau de <type>text</type>. Elle a comme syntaxe 3531 3532 <function>regexp_split_to_array</function>(<replaceable>chaine</replaceable>, <replaceable>modele</replaceable> … … 3539 3540 <programlisting> 3540 3541 3542 <!-- SAS 20080723 : les exemples suivants fonctionnent avec E'\\\s+' ou 3543 E'\\s+'. Quelle est la différence ? N'y en a-t-il simplement pas un de trop 3544 dans le premier exemple ?--> 3541 3545 SELECT foo FROM regexp_split_to_table('the quick brown fox jumped over the lazy dog', E'\\\s+') AS foo; 3542 3546 foo … … 3586 3590 rationnelles ignorent les correspondances de longueur nulle qui surviennent 3587 3591 au début ou à la fin de la chaîne ou immédiatement après une correspondance. 3588 C eciest contraire à la définition stricte de la correspondance des3589 expressions rationnelles qui est implémentée par3590 <function>regexp_matches</function>, mais est habituellement le comportement3591 le plus agréable enpratique. Les autres systèmes comme Perl utilisent des3592 C'est contraire à la définition stricte de la correspondance des 3593 expressions rationnelles implantée par 3594 <function>regexp_matches</function>, mais c'est habituellement le comportement 3595 le plus pratique. Les autres systèmes comme Perl utilisent des 3592 3596 définitions similaires. 3593 3597 </para> … … 3600 3604 <para> 3601 3605 Les expressions rationnelles de <productname>PostgreSQL</productname> sont 3602 impl émentées en utilisant un package écrit par Henry Spencer. Une grande3606 implantées à l'aide d'un paquetage écrit par Henry Spencer. Une grande 3603 3607 partie de la description des expressions rationnelles ci-dessous est une 3604 3608 copie intégrale de son manuel. … … 3615 3619 <productname>PostgreSQL</productname> supporte les deux formes et 3616 3620 y ajoute quelques extensions ne faisant pas partie du standard 3617 POSIX mais largement utilisées grâce àleur3621 POSIX mais largement utilisées du fait de leur 3618 3622 disponibilité dans les langages de programmation tels que Perl et Tcl. 3619 3623 Les <acronym>ER</acronym> qui utilisent ces extensions non POSIX sont appelées … … 3624 3628 qu'elles sont bien plus limitées). En premier lieu sont décrits les formats 3625 3629 ERA et ERE, en précisant les fonctionnalités qui ne s'appliquent qu'aux 3626 ERA. L'explication des différences des ERB vient ensuite.3630 ERA. L'explication des différences des ERB vient ensuite. 3627 3631 </para> 3628 3632 … … 3649 3653 3650 3654 <para> 3651 Une branche contient des <firstterm>atomes quantifiés</firstterm> ou3655 Une branche contient des <firstterm>atomes quantifiés</firstterm>, ou 3652 3656 <firstterm>contraintes</firstterm>, concaténés. Elle établit une correspondance 3653 3657 pour le premier suivi d'une correspondance pour le second, etc ; une … … 3657 3661 <para> 3658 3662 Un atome quantifié est un <firstterm>atome</firstterm> éventuellement suivi d'un 3659 <firstterm>quantifi eur</firstterm> unique. Sans quantifieur, il établit une3660 correspondance avec l'atome. Avec un quantifi eur, il peut établir un3663 <firstterm>quantificateur</firstterm> unique. Sans quantificateur, il établit une 3664 correspondance avec l'atome. Avec un quantificateur, il peut établir un 3661 3665 certain nombre de correspondances avec l'atome. Un <firstterm>atome</firstterm> 3662 3666 est une des possibilités du <xref linkend="posix-atoms-table"/>. 3663 Les quantifi eurs possibles et leurs significations sont disponibles dans le3667 Les quantificateurs possibles et leurs significations sont disponibles dans le 3664 3668 <xref linkend="posix-quantifiers-table"/>. 3665 3669 </para> … … 3717 3721 <entry><literal>[</literal><replaceable>caractères</replaceable><literal>]</literal> </entry> 3718 3722 <entry>une <firstterm>expression entre crochets</firstterm>, qui établit 3719 une correspondance avec tout <replaceable>caractères</replaceable> (voir la3723 une correspondance avec tout caractère de <replaceable>caractères</replaceable> (voir la 3720 3724 <xref linkend="posix-bracket-expressions"/> pour plus de détails) </entry> 3721 3725 </row> … … 3771 3775 </note> 3772 3776 3773 <!-- Quantifier : quantificateur comme écrit plus haut ou quantifieur ? -->3774 3777 <table id="posix-quantifiers-table"> 3775 3778 <title>quantificateur d'expressions rationnelles</title> … … 3963 3966 <literal>^</literal>). 3964 3967 Un <literal>-</literal> peut être inclus dans la liste s'il en est le 3965 premi ser ou le dernier caractère ou s'il est la deuxième borne d'une plage.3968 premier ou le dernier caractère ou s'il est la deuxième borne d'une plage. 3966 3969 Un <literal>-</literal> peut être utilisé comme première borne d'une plage 3967 3970 s'il est entouré par <literal>[.</literal> et <literal>.]</literal> et … … 3991 3994 élément unique, ou le nom d'une séquence d'interclassement) entouré de 3992 3995 <literal>[.</literal> et <literal>.]</literal> représente la séquence de 3993 caractères de cet élément d'interclasseme rnt. La séquence est un élément3996 caractères de cet élément d'interclassement. La séquence est un élément 3994 3997 unique de la liste dans l'expression entre crochets. Une expression entre crochets 3995 3998 contenant un élément d'interclassement multi-caractères peut donc correspondre … … 4000 4003 </para> 4001 4004 4005 <!-- SAS::ICI --> 4002 4006 <note> 4003 4007 <para> … … 5399 5403 <para> 5400 5404 Année, semaine et jour de la semaine... par exemple, 5401 <literal>to_date('2006-42-4', 'IYYY-IW-ID')</literal> renvoi tla date5405 <literal>to_date('2006-42-4', 'IYYY-IW-ID')</literal> renvoie la date 5402 5406 <literal>2006-10-19</literal>. Si vous omettez le jour de la semaine, 5403 5407 le jour utilisé sera le lundi. … … 5407 5411 <para> 5408 5412 Année et jour de l'année... par exemple, 5409 <literal>to_date('2006-291', 'IYYY-IDDD')</literal> renvoi taussi <literal>2006-10-19</literal>.5413 <literal>to_date('2006-291', 'IYYY-IDDD')</literal> renvoie aussi <literal>2006-10-19</literal>. 5410 5414 </para> 5411 5415 </listitem> … … 10533 10537 une ligne quelconque de la sous-requête. 10534 10538 Le résultat est NULL si la comparaison ne renvoie false pour aucune ligne 10535 de la sous-requête, et si elle renvoi tNULL pour au moins une ligne.10539 de la sous-requête, et si elle renvoie NULL pour au moins une ligne. 10536 10540 </para> 10537 10541

