#1
|
|||
|
|||
![]() Hello,
1) is it possible to use an index inside the result of a query. For instance, i could use an index to reorder the query instead of having to redo a query only changing the orderby clause. If it's not possible... why not? Is it hard to implement? 2) is there in Nexus a way to copy the structure and the contents of a query into a table on the disk. Something like copystructureNcontents2table function, for instance? 3) I know that i can use filters but i find that scopes can be a lot lot faster than filters. Are you going to implement scopes soon? TIA Pierre --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.538 / Virus Database: 333 - Release Date: 2003-11-10 |
#2
|
|||
|
|||
![]() > 1) is it possible to use an index inside the result of a query. For
> instance, i could use an index to reorder the query instead of having to > redo a query only changing the orderby clause. If it's not possible... why > not? Is it hard to implement? I guess this is not possible, but haven't tryed. The reason: the query is a *new* recordset, and this temp dataset doesn't have any index. You could use the SELECT INTO feature to insert the query into an existing, already defined, table and use the index from that table. > 2) is there in Nexus a way to copy the structure and the contents of a query > into a table on the disk. Something like copystructureNcontents2table > function, for instance? SELECT INTO can help you, as it will copy the fields into a new table For example: SELECT * INTO "NewTable" FROM "OldTable" will copy all the contents from the table OldTable into a new physical table named NewTable. This will only copy the field defs, though. HTH -- Rodrigo Gómez [NDX] rgomez@msa.sinspam.com.mx (remove "sinspam." from the address) "Pierre Demers" <pierredemers@NOSPAMsympatico.ca> escribió en el mensaje news:3fb0217d@wic040d.... > Hello, > > 1) is it possible to use an index inside the result of a query. For > instance, i could use an index to reorder the query instead of having to > redo a query only changing the orderby clause. If it's not possible... why > not? Is it hard to implement? > > 2) is there in Nexus a way to copy the structure and the contents of a query > into a table on the disk. Something like copystructureNcontents2table > function, for instance? > > 3) I know that i can use filters but i find that scopes can be a lot lot > faster than filters. Are you going to implement scopes soon? > > TIA > Pierre > > > --- > Outgoing mail is certified Virus Free. > Checked by AVG anti-virus system (http://www.grisoft.com). > Version: 6.0.538 / Virus Database: 333 - Release Date: 2003-11-10 > > |
#3
|
|||
|
|||
![]() > 1) is it possible to use an index inside the result of a query. For
> instance, i could use an index to reorder the query instead of having > to redo a query only changing the orderby clause. If it's not > possible... why not? Is it hard to implement? It is currently not possible. Why not? I don't think this is provided for in the SQL standard. You could of course use SELECT .. INTO .. and then ALTER the resulting table to add the indexes you wanted. > 2) is there in Nexus a way to copy the structure and the contents of > a query into a table on the disk. Something like > copystructureNcontents2table function, for instance? There is currently not one function that does it all. If you look at the EM, the Copy To Tables menu item in the Table browser has example code to do it. Added to wishlist, issue #535. > 3) I know that i can use filters but i find that scopes can be a lot > lot faster than filters. Are you going to implement scopes soon? The only ref I can find to Scopes is in Apollo. Is it similar to Range in Borland's TDataSet? -- Eivind Bakkestuen [NDD] Please, no email unless requested. Search Borland and third-party newsgroups here: www.tamaracka.com |
#4
|
|||
|
|||
![]() Thanks Rodrigo
Pierre --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.538 / Virus Database: 333 - Release Date: 2003-11-10 |
#5
|
|||
|
|||
![]() > There is currently not one function that does it all. If you look at the
EM, > the Copy To Tables menu item in the Table browser has example code to do it. > Added to wishlist, issue #535. Thanks Eivind > > 3) I know that i can use filters but i find that scopes can be a lot > > lot faster than filters. Are you going to implement scopes soon? > > The only ref I can find to Scopes is in Apollo. Is it similar to Range in > Borland's TDataSet? No, it's not Apollo. I currently use Advantage. I am currently converting an app. and i use scopes some places combined with filters and it's a winner for me. With a table containing 1,000,000 records it is quite efficient even with small machine like pentium 133 for instance. I am hopefull and wish to find something that has the same performance with Nexus( I'll know soon). At first with Advantage for that particular task, I was using only filters and the performance was less than desirable. With scopes + filters, it is just great. I guess I am going to try the range + filter to see how it goes... Thanks Pierre --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.538 / Virus Database: 333 - Release Date: 2003-11-10 |
#6
|
|||
|
|||
![]() Pierre,
>With scopes + filters, it is just great. I guess I am going to try the range + filter to see how it goes... If your investigations turn out to be unsatisfactory, I guess you'll have to explain those of us who are not familiar with scopes (in this context) exactly what they are and how they're useful to you. - Per |
#7
|
|||
|
|||
![]() "Pierre Demers" <pierredemers@NOSPAMsympatico.ca> wrote in
news:3fb0217d@wic040d.: > 3) I know that i can use filters but i find that scopes can be a lot > lot faster than filters. Are you going to implement scopes soon? Hi Pierre, After doing a search on Tamaraka, it appears scopes are ranges in Nexus, and yes, mixing Ranges & Filters with Nexus is very fast.. ![]() -- Keith Johnson [NDX] |
#8
|
|||
|
|||
![]() Hello Per,
> If your investigations turn out to be unsatisfactory, I guess you'll have to > explain those of us who are not familiar with scopes (in this context) > exactly what they are and how they're useful to you. Having not done the tests yet with Nexus, I can tell you why it's great for me. Because the advantage scopes have a top-bottom option set by default. Which means that if I write something like this AdsTable1.ScopeBegin := eSearch.text; AdsTable1.ScopeEnd := eSearch.text; AdsTable1.Scoped := True; For instance, if I type only the letter B in eSearch.text, I will get in the scope all the list of items that start with B through C not included. B123 B554 B945 etc I am not too familiar with ranges but I guess only typing B in eSearch.text will get me nothing, unless I write other parameters, like RangeFrom = B and RangeEnd = B945 and applyrange would do it, although it's done implicitly with Advantage using scopes. It's may be a silly question but what parameters would you use with ranges to get the same result as ADS scopes? Thanks Pierre Hello Per, > If your investigations turn out to be unsatisfactory, I guess you'll have to > explain those of us who are not familiar with scopes (in this context) > exactly what they are and how they're useful to you. Having not done the tests yet with Nexus, I can tell you why it's great for me. Because the advantage scopes have a top-bottom option set by default. Which means that if I write something like this AdsTable1.ScopeBegin := eSearch.text; AdsTable1.ScopeEnd := eSearch.text; AdsTable1.Scoped := True; For instance, if I type only the letter B in eSearch.text, I will get in the scope all the list of items that start with B through C not included. B123 B554 B945 etc I am not too familiar with ranges but I guess only typing B in eSearch.text will get me nothing, unless I write other parameters, like RangeFrom = B and RangeEnd = B945 and applyrange would do it, although it's done implicitly with Advantage using scopes. It's may be a silly question but what parameters would you use with ranges to get the same result as ADS scopes? Thanks Pierre |
#9
|
|||
|
|||
![]() "Pierre Demers" <pierredemers@NOSPAMsympatico.ca> wrote in
news:3fb0d46a@wic040d.: > Hello Per, > >> If your investigations turn out to be unsatisfactory, I guess you'll >> have > to >> explain those of us who are not familiar with scopes (in this >> context) exactly what they are and how they're useful to you. > Having not done the tests yet with Nexus, I can tell you why it's > great for me. Because the advantage scopes have a top-bottom option > set by default. Which means that if I write something like this > > AdsTable1.ScopeBegin := eSearch.text; > AdsTable1.ScopeEnd := eSearch.text; > AdsTable1.Scoped := True; > > For instance, if I type only the letter B in eSearch.text, I will get > in the scope all the list of items that start with B through C not > included. > > B123 > B554 > B945 > etc > > I am not too familiar with ranges but I guess only typing B in > eSearch.text will get me nothing, unless I write other parameters, > like RangeFrom = B and RangeEnd = B945 and applyrange would do it, > although it's done implicitly with Advantage using scopes. > > It's may be a silly question but what parameters would you use with > ranges to get the same result as ADS scopes? > > > Thanks > Pierre > Hello Per, > >> If your investigations turn out to be unsatisfactory, I guess you'll >> have > to >> explain those of us who are not familiar with scopes (in this >> context) exactly what they are and how they're useful to you. > Having not done the tests yet with Nexus, I can tell you why it's > great for me. Because the advantage scopes have a top-bottom option > set by default. Which means that if I write something like this > > AdsTable1.ScopeBegin := eSearch.text; > AdsTable1.ScopeEnd := eSearch.text; > AdsTable1.Scoped := True; > > For instance, if I type only the letter B in eSearch.text, I will get > in the scope all the list of items that start with B through C not > included. > > B123 > B554 > B945 > etc > > I am not too familiar with ranges but I guess only typing B in > eSearch.text will get me nothing, unless I write other parameters, > like RangeFrom = B and RangeEnd = B945 and applyrange would do it, > although it's done implicitly with Advantage using scopes. > > It's may be a silly question but what parameters would you use with > ranges to get the same result as ADS scopes? > > > Thanks > Pierre Something like this.. table1.setrange(['B'],['Bz']); -- Keith Johnson [NDX] |
#10
|
|||
|
|||
![]() Hello Keith,
"> Something like this.. > > table1.setrange(['B'],['Bz']); I knew that, so what about the item Bzz ? <g> With your method I would have to do some padding. I was more looking for a character like * or & or $ or !, etc. that would do it for me.... BTW, inside a Nexus filter, can I use character like the above. In Advantage, I can use : eSearch.text + '*' // to get a partial match from the beginning '$ ' + eSearch.text // to get a partial match from anywhere etc. Is it documented somewhere? Thanks Pierre --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.538 / Virus Database: 333 - Release Date: 2003-11-10 |
Thread Tools | |
Display Modes | |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Some questions | Alessandro Romano | nexusdb.public.support.thirdparty | 10 | 6th August 2005 03:36 AM |
Some SQL questions | Stefan Paege | nexusdb.public.support.sql | 3 | 6th February 2004 12:45 AM |
Questions | Lee | nexusdb.public.discussions | 9 | 1st October 2003 12:00 PM |
More questions...to anyone who can help! | Robert Meek | nexusdb.public.support | 29 | 18th August 2003 10:01 AM |
Some questions | Pierantonio Bovo | nexusdb.public.support | 1 | 11th July 2003 04:35 AM |