$O-10.1-SQL : pos('x', strint) in a Where clause ?
jmv
jmvoegeli at bluewin.ch
Wed May 19 05:08:48 UTC 2021
Hello Doug,
Thank you very much.
the "kSp" = Space character (with kSq et kDq being ' et ")
> try the omnis SL browser to try your code
That is an excellent suggestion and I will follow it
It is now very much clear.
Best regards,
Jean-Marc
> Le 18 mai 2021 à 17:36, Doug Easterbrook <doug at artsman.com> a écrit :
>
> hello.
>
> I had a look for the Omnis SQL syntax reference and found it online
> https://www.omnis.net/developers/resources/download/manuals/Omnis_SQL_v2api.pdf <https://www.omnis.net/developers/resources/download/manuals/Omnis_SQL_v2api.pdf>
>
>
> the syntax of the like looks like the following with the admonishment that it does not implement ‘escape’ characters to actually search for a ‘%’ in the string. a % is a wildcard that means one or more characters.
>
> like_predicate ::=
> column_reference [ NOT ] LIKE literal
> The ANSI standard adds an ESCAPE clause to the like_predicate to let you specify an escape character so you can match a % or _; Omnis does not implement this.
>
>
> in your code … I’m not sure what kSP and kSq are
>
> but if it evaluates to
> — Affi_Cours_Suivis LIKE '%/G%' -or-
> — NOT Affi_Cours_Suivis LIKE '%/G%'
> which should be equivalent to …. Affi_Cours_Suivis NOT LIKE '%/G%'
> meaning the NOT could be in front of the variable or the LIKE and should mean the same thing
>
>
> then my reading of the omnis sql syntax is that it could work.
>
>
> try the omnis SL browser to try your code. I’f I’m not sure about something, I always use pgadmin for psotred to work out harder SQL syntax before I try to code it.
>
>
> Doug Easterbrook
> Arts Management Systems Ltd.
> mailto:doug at artsman.com
> http://www.artsman.com
> Phone (403) 650-1978
>
>> On May 18, 2021, at 6:23 AM, jmv <jmvoegeli at bluewin.ch> wrote:
>>
>> The method contains :
>>
>> If (tChoix.cX_Cours_Grottes)
>> If (tChoix.cX_Addition_Cours_Grottes)
>> Calculate vText as con("(Affi_Cours_Suivis",kSp,"LIKE",kSp,kSq,"%","/G","%",kSq,")")
>> Calculate vOp as vOp_Or
>> Else If (tChoix.cX_Exclusion_Cours_Grottes)
>> Calculate vText as con("( NOT","(Affi_Cours_Suivis",kSp,"LIKE",kSp,kSq,"%","/G","%",kSq,"))")
>> Calculate vOp as vOp_And
>> End If
>> End If
>>
>> and many more like that.
>>
>> (I've isolated the "/G" to simplify the change. It looks more than a little awkward !)
>>
>> Is that possible ?
>>
>>
>>
>>> Le 18 mai 2021 à 15:02, Doug Easterbrook <doug at artsman.com> a écrit :
>>>
>>> if you are using postgres, I’d use
>>>
>>> select * from table where col_name not ilike ‘%@%’
>>>
>>>
>>>
>>>
>>>
>>>
>>> Doug Easterbrook
>>> Arts Management Systems Ltd.
>>> mailto:doug at artsman.com
>>> http://www.artsman.com
>>> Phone (403) 650-1978
>>>
>>>> On May 18, 2021, at 5:45 AM, jmv <jmvoegeli at bluewin.ch> wrote:
>>>>
>>>> Hello listers,
>>>>
>>>> I'm struggling with SQL statement.
>>>>
>>>> I want to find records that do not contain a specific character:
>>>>
>>>> something like :
>>>>
>>>> SELECT * WHERE pos("@",Col_Name) = 0
>>>>
>>>> I do not know how to do this.
>>>>
>>>> Could you help me ?
>>>>
>>>> best regards,
>>>>
>>>> Jean-Marc
>>>> _____________________________________________________________
>>>> Manage your list subscriptions at http://lists.omnis-dev.com
>>>> Start a new message -> mailto:omnisdev-en at lists.omnis-dev.com
>>>
>>> _____________________________________________________________
>>> Manage your list subscriptions at http://lists.omnis-dev.com
>>> Start a new message -> mailto:omnisdev-en at lists.omnis-dev.com
>>
>> _____________________________________________________________
>> Manage your list subscriptions at http://lists.omnis-dev.com
>> Start a new message -> mailto:omnisdev-en at lists.omnis-dev.com
>
> _____________________________________________________________
> Manage your list subscriptions at http://lists.omnis-dev.com
> Start a new message -> mailto:omnisdev-en at lists.omnis-dev.com
More information about the omnisdev-en
mailing list