https://learninghub.kx.com/forums/topic/when-the-backtick-is-required
just looking at the user case from https://code.kx.com/q/ref/delete/#delete-keyword and not sure why the backtick is not needed, since
“delete ps from x”, ps is a symbol atom?
and in the below case backtick is needed:
load `:flatT
`flatT in key `.
in some cases we need backtick and others not, what is the rule here?
Thanks,
This is a qSQL statement:
https://code.kx.com/q/ref/delete/
q)delete ps from x
qSQL has some differences to q.
"delete is a qSQL query template and varies from regular q syntax."
In qSQL statements backticks are not needed for looking up columns in a table or keys in a dictionary.
These are normal q statements:
q)load `:flatT //Uses ` to declare a symbol, this case is known as a hsym, denoting a filepath as it starts with :
q)`flatT in key `. //` used to declare a symbol `flatT and also to refer to . the default namespace
I see, thanks for the explanation!
Full qSQL docs on: https://code.kx.com/q/basics/qsql/
The 4 keywords for qSQL are:
- select https://code.kx.com/q/ref/select/
- update https://code.kx.com/q/ref/update/
- delete https://code.kx.com/q/ref/delete/
- exec https://code.kx.com/q/ref/exec/