Tener propiedades de cláusula
-
24-10-2019 - |
Pregunta
Necesito ayuda con este ejercicio donde tengo que traducir propiedades del inglés al SQL.
Preguntas:
la longitud tiene al menos un 0
Answer: MIN(ABS(length)) = 0
La longitud tiene más que un valor
Answer: MIN(length) < MAX(length)
no hay nulos para la longitud
Answer: COUNT(*) = COUNT(length)
Los valores de longitud son positivos o negativos
Answer: MIN(length) * MAX(length) > 0
La longitud difiere por encima y por debajo de cero en la misma cantidad
Answer: MIN(length) = -max(length)
Todos los valores de longitud son diferentes
Answer: COUNT(DISTINCT length) = COUNT(length)
Solo uno de min (longitud) o máximo (longitud) es positivo
Answer: MIN(length) * MAX(length) < 0
La longitud tiene un valor o valor nulo
Answer: MIN(length) = MAX(length)
¿Son correctos? No estoy seguro sobre el #3, 5, 6 y 8 en particular.
Solución
la longitud tiene al menos un 0
Answer: MIN(ABS(length)) = 0
La longitud tiene más que un valor
Answer: MIN(length) < MAX(length) or Answer: COUNT(distinct length) > 1
no hay nulos para la longitud
Answer: COUNT(*) = COUNT(length)
Los valores de longitud son positivos o negativos
Answer: MIN(length) * MAX(length) > 0 or Better Answer: Sign(MIN(length)) * Sign(MAX(length)) > 0 -- Because, with large values of length, multiplying two of them -- together can give you an overflow.
La longitud difiere por encima y por debajo de cero en la misma cantidad
Answer: MIN(length) = -max(length)
Todos los valores de longitud son diferentes
Answer: COUNT(DISTINCT length) = COUNT(length)
Solo uno de min (longitud) o máximo (longitud) es positivo
Maybe Wrong Answer: MIN(length) * MAX(length) < 0 (0 is not positive) or Answer: MIN(length) <= 0 and MAX(length) > 0 -- IF: one must be positive and the other must be negative -- change <= 0 to < 0
La longitud tiene un valor o valor nulo
Wrong Answer: MIN(length) = MAX(length) -- null=null does not return true or Answer: COUNT(distinct length) <= 1
Otros consejos
Yo cuestionaría #2. Es posible que tenga dos valores de longitud idénticos.
Para el n. ° 3, no usaría la cláusula para verificar para no hacer nulos. Lo mismo para el #4. Tener es no El lugar correcto para verificar la equivalencia para cada fila contra un valor escalar.
#5 podría tener algunos problemas que valen la pena escribir. ¿Estás seguro de que se refieren a Min y Max y no distribución?
#8 también está redactado extrañamente. NULL podría ser el valor de la longitud, o podría ser ausencia de valor. Depende de cómo se forme la consulta. Además, ¿existe el requisito de que no use operadores como AND
& OR
?
Además, NULL se trata como "desconocido" con la mayoría de las plataformas de bases de datos. Como se desconoce, no se puede verificar en busca de equivalencia con otro valor. Si no sabes que Value1
es, no puedes saber si es lo mismo que lo que hay en Value2
...