Jump to content

Consulta orden filtros despues de where


Recommended Posts

Buenas tardes;

Tengo una duda de principiante.

En las consultas SQL, el orden de los filtros que se ponen después de where como lo hace??, desde where hacia la derecha o desde el final de la consulta a la izquierda.

Lo pregunto por optimizar la consulta, para poner los filtros que más filas eliminan los primeros.

Ejemplo de consulta:

Consulta = "Select nombre, Fecha, Color from Tabla1 where (color='verde' or color='amarillo' or color='azul') and Fecha between #" & Fecha_Inicio & "# and #" & Fecha_Fin & "# and nombre=’Pepe’”

Y de estas 2 opciones cual usarías??.

where (color='verde' or color='amarillo' or color='azul')

where color in ('verde','amarillo','azul')

Muchas gracias.

Link to comment
Share on other sites

Hace 13 horas, lphant dijo:

Buenas tardes;

Tengo una duda de principiante.

En las consultas SQL, el orden de los filtros que se ponen después de where como lo hace??, desde where hacia la derecha o desde el final de la consulta a la izquierda.

Lo pregunto por optimizar la consulta, para poner los filtros que más filas eliminan los primeros.

Ejemplo de consulta:

Consulta = "Select nombre, Fecha, Color from Tabla1 where (color='verde' or color='amarillo' or color='azul') and Fecha between #" & Fecha_Inicio & "# and #" & Fecha_Fin & "# and nombre=’Pepe’”

Y de estas 2 opciones cual usarías??.

where (color='verde' or color='amarillo' or color='azul')

where color in ('verde','amarillo','azul')

Muchas gracias.

buenos días:

Llevo desde ayer buscando por internet en que orden se filtran las condiciones de una consulta sql y no encuentro nada.

alguien sabe como??.

muchas gracias.

un saludo,

Link to comment
Share on other sites

Hola

In se usa para no estar repitiendo el Or demasiadas veces, es decir, nos ahorra estar digitando muchas veces una misma instrucción y, mal que bien, muchas veces entre menos código haya un poquito más rápido es todo (OJO, muchas veces, no es que siempre).

Sobre el uso correcto y el orden de colocar el Where, eso está definido por el tipo de operadores que se usa:

Enlace1

Si de casualidad también quieres saber el orden de ejecución de otras instrucciones, mira por aquí:

Enlace2

Hay mucha información al respecto, pero entiendo que no necesariamente se sabe cómo encontrarla, a ver si con eso que envío ya se te hace más fácil hallar más. Saludos.

Link to comment
Share on other sites

En 29/2/2020 at 16:55 , avalencia dijo:

Hola

In se usa para no estar repitiendo el Or demasiadas veces, es decir, nos ahorra estar digitando muchas veces una misma instrucción y, mal que bien, muchas veces entre menos código haya un poquito más rápido es todo (OJO, muchas veces, no es que siempre).

Sobre el uso correcto y el orden de colocar el Where, eso está definido por el tipo de operadores que se usa:

Enlace1

Si de casualidad también quieres saber el orden de ejecución de otras instrucciones, mira por aquí:

Enlace2

Hay mucha información al respecto, pero entiendo que no necesariamente se sabe cómo encontrarla, a ver si con eso que envío ya se te hace más fácil hallar más. Saludos.

Me ha servido mucho.....

Muchísimas gracias.

Un saludo,

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

Guest
This topic is now closed to further replies.
  • 37 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Files

  • Download Statistics

    • Files
      155
    • Comments
      89
    • Reviews
      25

    Latest File
    By pegones1

    1    0

  • Crear macros Excel

  • Posts

    • Hola, perdona la demora al responder, no he podido verlo hasta hoy, me ha venido de lujo, muchas gracias 👌
    • Hola, estoy iniciandome en el tema de vba y tal, asi que intentaré explicarme lo mejor posible   Tengo un boton de comando que me abre un "userform", dentro de ese "userform" hay 2 combobox y varios "label". En el "combobox1" se me abre un listado desplegable donde me aparecen los valores "azul, verde,amarillo,rojo... etc" y el "combobox2" abre un listado con los valores que van del 1 al 100, y ahora viene el problema... yo quiero que dependiendo del valor del "combobox1", me muestre SOLO parte de ese listado de valores del 1 al 100. Es decir, al seleccionar en el "combobox1" el valor "azul" quiero que SOLO me muestre los valores del 21 al 30, si selecciono el valor "rojo" quiero que SOLO me muestre los valores del 31 al 40. y asi con cada uno de los colores. Asi que no sé si debo hacer 1 listado general con esos valores del 1 al 100, o es mejor hacerlo de otro modo. es decir, no sé como decirle algo similar en VBA a: en el combobox 2--> si combobox1es igual a "azul" entonces muestrame los valores de la tabla que van desde B46:B55, pero si combobox1 es igual a "rojo entonces muestrame los valores de la tabla que van desde B56:B65.... e ir metiendo condicionantes. El problema es que no sé como hacer esas formulaciones en VBA.   actualmente el combobox1 dice lo siguiente:  Me.ComboBox1.List = Sheets("Colores").Range("A15:A24").Value y el combobox2 dice lo siguiente:  Me.ComboBox2.List = Sheets("Valores").Range("H6:H105").Value   Como he dicho, no sé cómo hacer que el "combobox2" "desglose" ese rango de 100 valores en rangos de 10 en 10 dependiendo de lo que diga "combobox1".   A su vez, por ejemplo si en el combobox1 selecciono el azul y en el combobox2 selecciono el valor 24. hay unos "labels" que me muestran diferentes valores segun lo que diga el "combobox2", en este caso me mostraria el valor "73A4BF" esto es lo que pone en VBA de ese label1: Me.Label1.Caption = Valor1 Valor1 = Application.WorksheetFunction.VLookup(Me.ComboBox2.Value, Sheets("Valores").Range("B:G"), 2, 0)   A todo esto, decir que mi vocabulario en tema de VBA es muy basico. Por lo que cualquier ayuda agradeceria una explicacion algo detallada. Un saludo!  
    • Buenos días,   Adjunto fichero. Un saludo, Paco HOJA CALCULO.xlsx
  • Recently Browsing

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Privacy Policy