Question

Je veux m'assurer que toutes les valeurs de la colonne x ne sont pas inférieurs à 0,5, donc je fais :

update x:max (x 0.5) from myTable

Mais cela donne une erreur (dans Studio pour KDB+):

An error occurred during execution of the query.
The server sent the response:
type
Studio Hint: Possibly this error refers to wrong type, e.g `a+1

Qu'est-ce qui ne va pas?

Était-ce utile?

La solution

Vous pouvez essayer d'utiliser |

q)update x|0.5 from myTable

Autres conseils

Cela devrait fonctionner.Cela a fonctionné pour moi.Voici la requête que j'ai utilisée pour tester :

update x:max(x;0.5) from myTable

-- Vérifiez le point-virgule dans la fonction max

Essaie le kdb vecteur conditionnel c'est similaire au cas-quand en SQL :

q)t:([] a:6?.9)

q)t
a
---------
0.4237094
0.5712045
0.8705158
0.2075746
0.8549775
0.3951729

q)update ?[a<0.5;0.5;a] from t
a
---------
0.5
0.5712045
0.8705158
0.5
0.8549775
0.5
q)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top