[ALL] let's think about Query Language for 2.0
Ruslan Zasukhin
sunshine at public.kherson.ua
Sun May 18 10:00:43 CDT 2003
on 5/18/03 6:33 AM, john roberts at jarobe01 at insightbb.com wrote:
>> Open your mind, and let's dream together.
>
> OK. You asked ... :)
>
>>
>> Assume you work with Table Person.
>> What classes/functions you need to describe simple single table query?
>>
>> Query = NodeEqual( Person.fldName, "Bill" )
>> Query.AndNode( NodeEqual( Person.LastName, "Gates") )
>> QueryResult = Query.Execute()
>>
>
> If I am following you, here are some ideas.
>
> You need NodeEqual and NodeNotEqual as well as the comparatives
> NodeLessThan, NodeLessThanOrEqual, NodeGreaterThan, NodeGreaterThanOrEqual.
>
> Along with the AndNode it would be nice to have both an OrNode and an
> ExclusiveOrNode.
>
> It would also be nice to have a way to build a ResultList of fields to limit
> the data being returned. This might be better handled via a list of nodes so
> that order could be specified and guaranteed.
This make me think about ability create Virtual Tables based on
a) selection of fields
b) selection of records.
Yes we have this right now as Cursor. But this is result of SQL query.
In SQL also exists term VIEW.
But since we talk now about low level without SQL, then such tables also can
have sense.
> Keeping with your tree analogy, can we build query trees and compose them
> via and, or, etc ? That would be nice. :)
YES, this is idea, and this is MY QUESTION:
what syntax in e.g. RB we can have,
what functions, what constants
to build a query as tree of nodes ?
> Am I close to what you are proposing ?
Absolutely.
--
Best regards,
Ruslan Zasukhin [ I feel the need...the need for speed ]
-------------------------------------------------------------
e-mail: ruslan at paradigmasoft.com
web: http://www.paradigmasoft.com
To subscribe to the Valentina mail list go to:
http://lists.macserve.net/mailman/listinfo/valentina
-------------------------------------------------------------
More information about the Valentina
mailing list