Client Side Filtering in the Grids

thatjeffsmith SQL Developer 0 Comments

Tell Others About This Story:

Just what it sounds like – you ask to see LESS data in a grid, and we don’t re-query the database. Instead, we filter only on the client-side.

This means it’s FAST. No asking the database to run the query again.

This also means you might not be getting the WHOLE truth, or the latest truth. Unless you’ve fetched ALL the rows down to the grid, it’s only going to filter on the data that’s already physically present in the grid. Plus if the data has changed since you ran the query or browsed the table/view…

Step 1. Click on the column header, and again on the funnel icon.

You’ll see a list of distinct values. You can click on one…

Clicking on a value will only show rows of that value for that column.

Clicking on a value will only show rows of that value for that column.

Step 2. Add your OWN filter.

Just type in your own clause. I want an IN (x, y, z) predicate. So I just type that in, and hit ENTER.

You don't need to put in the column name.

You don’t need to put in the column name.

Client filters work much like query predicates, so I was able to do a FIRST_NAME like ‘S%’ and JOB_ID <> ‘AD_VP’ and SALARY > 4800…

Step 3. Repeat as necessary.

You can do this for as many columns as you want. If you mouse over the column, you’ll see the filter text.

Step 4. Remove or Leave Intact.

Click on the funnel icon again. And then double-click on the ‘remove’ text.

You can also right-click on any column and say 'remove all filters'

You can also right-click on any column and say ‘remove all filters’

If you just refresh the grid, the filters WILL remain.

If you close and re-open the table editor, the filters ARE NOT persisted.

This also holds true to the SQL Worksheet results and report grids.

Or, Get the Latest Data

This re-runs the query - the database is doing the filtering FOR you.

This re-runs the query – the database is doing the filtering FOR you.

Tell Others About This Story:

Leave a Reply

Your email address will not be published. Required fields are marked *