FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Uso de IN en una sentencia SQL
Hola bue día a todos
Estoy tratando de hacer una sentencia SQL agregandole una IN
De que manera puedo realizar esta sentencia ya que puedo buscar de uno a N datos dentro del IN. Saludos |
#2
|
|||
|
|||
pues algunos manejadores de bases de datos te dejan hacer algo asi como:
in ('rojo', 'verde', 'azul') y la lista de n elementos |
#3
|
|||
|
|||
Sigo con la duda de hacer un In en una SQL
Gracias por la respuesta luisgutierrezb
Pero mi problema es que al hacer el llamado de esta sentencia SQL en Delphi es donde puede varia la cantida de elementos que quiero localizar, ya que un usuario puede necesitar un solo elemento pero otro puede necesitar mas de uno. Es por eso que no se como manipular esta sentencia. |
#4
|
|||
|
|||
tendrias que construir tu sentencia manualmente, e ir revisando de uno por uno, algo asi como:
if tipo=x then opciones := opciones + 'x, '; if tipo=y then opciones := opciones + 'y, '; etc... |
#5
|
||||
|
||||
Creo que lo que necesitas es que tus usuarios ingresen una o varias palabras para realizar una búsqueda, sí así es te paso un trozo de código PHP que con un par de cambios te puede servir en Delphi.
Código PHP:
__________________
Saludos Emilio |
#6
|
||||
|
||||
Yo lo hago de esta forma desde Delphi:
Utilizo un TStringList para almacenar los valores de la consulta; pueden ser una o más cadenas, después construyo la sentencia SQL, en tu caso
Le envió como parámetro la propiedad Commatext del TStringList que te da el mismo formato que propuso luisgutierrezb anteriormente, es decir, si la lista de cadenas contiene: Código:
verde azul rojo Espero que sea útil. Saludos |
#7
|
||||
|
||||
el problema es que cada uno de los elementos, si estos son texto, deberían estar entre apóstrofes:
'azul', 'verde', 'rojo' de esa forma para que puedieran quedar dentro del IN... ya lo había manejado de esamanera, pero ya no tengo delphi aquí.... extraño a delphi , lo que yo hacía era grabarlos entre apóstrofes al StringList... de esa manera al usar el commaText, estos ya aparecían con apóstrofes. ya que si los pasas como 'azul, verde, rojo' no creoq ue vaya a funcionar.
__________________
|
#8
|
|||
|
|||
Espero Te Sirva
YO LO QUE VEO ES QUE COMPARAS UNA VARIABLE CON UN CAMPO, ESA VARIABLE PUEDO TOMAR VARIOS VALORES PERO A FIN DE CUENTAS SOLO COMPARAS UNA VARIABLE CON UN CAMPO EL IN ES 1 A N NO TIENE CASO QUE USES EL IN PUEDES USAR EL SIMBOLO "=" SIN PROBLEMAS
ADOQUERY.SQL.TEXT:=' SELECT us.numero,us.nombre,ad.cveusuario,ad.falta,ad.id_adm,us.id_usu,ad.id_usu FROM administradores adLEFT JOIN usuarios us ON (us.id_usu=ad.id_usu) WHERE ad.borrado=0 AND us.borrado=0 AND us.id_pza = :PARAMENTRO';ADOQUERY.Parameters.ParamValues['PARAMENTRO']:=EDIT1.TEXT;ADOQUERY.OPEN; POR EJEMPLO EN CASO DE QUE EL VALOR QUIERES QUE SE TOME DE UN EDIT O SI NO SIMPLEMENTE O SI NO SIMPLEMENTE CONCATENAS PERO EL IN DEFINITIVAMENTE NO SE USA AHI |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Problemas con Sentencia SQL | AGAG4 | SQL | 4 | 26-04-2006 03:11:57 |
Ayuda con sentencia SQL | Sick boy | SQL | 8 | 29-04-2005 18:02:04 |
Sentencia SUM | geovany | SQL | 2 | 29-10-2004 23:52:24 |
Sin valor en Sentencia | AGAG4 | SQL | 6 | 21-09-2004 22:19:05 |
sentencia sql??? | empty | SQL | 3 | 07-04-2004 11:01:32 |
|