My favorites | Sign in
Project Home Downloads Wiki Issues Source
New issue   Search
for
  Advanced search   Search tips   Subscriptions
Issue 127: Filtering by Browse & Search
3 people starred this issue and may be notified of changes. Back to list
Status:  New
Owner:  ----


Sign in to add a comment
 
Reported by szvladi...@googlemail.com, Aug 4, 2008
Browse & Search needs one button "Filtering", for the beginning in filter
it can be written WHERE expression in SQL

For example:

WHERE X>5 AND ID IN (SELECT ID FROM OTHERTABLE WHERE MCLASS='MONEY')

Only filtered strings should be shown in  resulting table; surely,
filtering strings are editable!

Actually, this improvement can be implemented instead of  Issue 120  (allow
edit in query)
Jul 8, 2010
#1 linux.us...@gmail.com
Concur.  The search dialog shows one entry per column, and presents a limited selection of expressions:
= != < <= > >= "IS NULL" "IS NOT NULL"

as well as a few convenience expressions:
contains "begins with" "ends with"

However:
* This is not inclusive of all sqlite SQL operators
  (see http://www.sqlite.org/lang_expr.html)  
* sqlite does not impose a one expression / column restriction
* It is unknown how the convenience expressions are implemented
  - LIKE, GLOB, MATCH, REGEXP, or a custom function
  - Whether input is escaped, or if the special characters still "work"

This is preventing some very trivial queries, eg:
SELECT * from t1 where t1.i > 5 AND t1.i < 10

While the "Execute SQL" tab can be used to execute arbitrary SQL, the results cannot be edited, even if selecting only one table, including the rowid column.

Consequently, there is no method to edit records in the context of a search when the above sqlite-manager restrictions apply.  This is particularly frustrating, and trying to match records between the "Execute SQL" tab and the "Browse & Search" tab for editing is time consuming and error prone...

Users should be able to specify:
ORDER BY, LIMIT, OFFSET, DISTINCT, WHERE

Noting that other filters are available for <result-column(s)>, SELECT ALL is default, and the <compound-operators> are likely unnecessary in the context of a single table query.  While LIMIT and OFFSET are supported through the global LIMIT preference, OFFSET is limited to paging through the results in multiples of LIMIT.
Sign in to add a comment

Powered by Google Project Hosting