Una pregunta SCBCD más: EJB QL


(Imagen: Andy Warhol - Sopa Campbell)

Ya deben andar aburridos con tanta pregunta...no?

A developer wants to create a Java Persistence Query that returns valid U.S phone numbers (formatted as "123-456-7890" or "800-RUN-EJB3") from a collection of differently formated international phone numbers. The developer needs only those numbers that begin with 303. Which WHERE clause is correct?
  • WHERE addr.phone LIKE '303_'
  • WHERE addr.phone LIKE '303%'
  • WHERE addr.phone LIKE '303-_-_'
  • WHERE addr.phone LIKE '303-%-%'
  • WHERE addr.phone LIKE '303-___-____'
  • WHERE addr.phone LIKE '303-%%%-%%%%'
El operador LIKE nos permite consultar Strings que pertenezcan a un patrón específico, en este caso el patrón de números de teléfono americanos. Se nos permite usar dos caracteres especiales al momento de definir un patrón: porcentaje (%) para cualquier secuencia de caracteres y underscore (_) para un sólo caracter.

Entonces la idea del patrón para la pregunta dada es que se inicie con '303-', le sigan tres caracterés, aparezca otro guión '-' y finalmente le sigan 4 caracteres. Para este fin, usamos underscore para representar a cada caracter por lo que la respuesta correcta es la quinta.

Pregunta tomada de ExamWorx

Publicar un comentario