Uso de la función to_number
Publicado: 2012-07-10 13:56 @622
Dentro de un quiero realizar una consulta a una DB (Postgresql). La consulta que quiero realizar es "semejante" a la siguiente (y digo semejante porque no me está resultando):
En dónde pongo length(código)>0 la intención es que la longitud del contenido de código sea mayor a cero, lo aclaro por las dudas.
En dónde pongo código ~ ^[0-9]+$ quiero decir que los caracteres comienzan y terminan con dígitos y la palabra más corta ser un solo dígito o más...
Y por último to_number es una función que permite transformar el contenido de cada uno de los códigos en dígitos y de esa manera ver si coincide con el valor de la variable $id. Por ejemplo 2563=2563// y esto DAR TRUE porque corresponde exceptuando el resto... donde $id=2563 y código=2563.
Una última aclaración: miré un poco el contenido de la tabla y los contenidos de código, pueden ser:
0
xxx
xxxxxxx
asdqwe
No corresponde
000000
10787//
1111111
-
17321 ab tvf
RT CASONA
En la tabla, código es VARCHAR y la variable $id (del script Perl) siempre numérica.
¡¡¡Agradecería a quien sea por alguna mano!!!
Using perl Syntax Highlighting
- foreach $id (keys %hash)
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
Using sql Syntax Highlighting
- SELECT * FROM tabla WHERE pres = 3 AND length(codigo)>0 AND codigo ~ ^[0-9]+$ AND $id = to_number('codigo', '999999');
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
En dónde pongo length(código)>0 la intención es que la longitud del contenido de código sea mayor a cero, lo aclaro por las dudas.
En dónde pongo código ~ ^[0-9]+$ quiero decir que los caracteres comienzan y terminan con dígitos y la palabra más corta ser un solo dígito o más...
Y por último to_number es una función que permite transformar el contenido de cada uno de los códigos en dígitos y de esa manera ver si coincide con el valor de la variable $id. Por ejemplo 2563=2563// y esto DAR TRUE porque corresponde exceptuando el resto... donde $id=2563 y código=2563.
Una última aclaración: miré un poco el contenido de la tabla y los contenidos de código, pueden ser:
0
xxx
xxxxxxx
asdqwe
No corresponde
000000
10787//
1111111
-
17321 ab tvf
RT CASONA
En la tabla, código es VARCHAR y la variable $id (del script Perl) siempre numérica.
¡¡¡Agradecería a quien sea por alguna mano!!!