Consolidate Select by Attribute Expression Modes

10-30-2019 03:49 PM
Status: Under Consideration
Labels (1)
New Contributor III

When the ArcGIS Pro "Select Layer By Attribute" window is first presented, you must select how you want to proceed before you can start building an expression.  Depending on your choice the window either goes to a mode with an expression builder interface (but where the expression you are building is difficult to see) or to a SQL mode that lets you directly type a SQL expression, but has few tools for helping you build it correctly.

The ArcMap "Select By Attributes" window operates in a single mode that contains all of the functions of both modes of the ArcGIS Pro window.  My idea is to add the SQL expression pane to the ArcGIS Pro query builder window. This would eliminate the need to initially select the mode, make it easier to see the full expression in query builder mode, and make help from the query builder widgets availabe while you type in the SQL expression pane.

Also I think the "Select Layer By Attribute" window title should be changed to "Select By Attributes".  The tool is NOT for selecting a layer, it is for selecting features from a layer. 

The revised ArcGIS Pro window would look like this:

As you build an expression, the SQL box would remain below the clause-builder widgets.

Doing this would make the initial expression-building decision, shown below, unnecessary. The new initial window includes all of the functionality of the first two choices, and the "Add expression from file" option is available with the Load button.

The graphics below show what the window looks like in its two modes in ArcGIS Pro 2.4.2.  If you are looking at the widgets, you cannot see what the current expression is.  If you are looking at the SQL pane, it does have intellisense to help you pick fields for the expression, but the drop-down list for field values is not there to help you enter them with the correct syntax.  The required "timestamp" keyword and the single quotes in the SQL expression below right were provided by selecting the time value from the drop-down list on the left.  You probably wouldn't know how to enter it this way if you did not have help from the interface.


You can't switch to the expression builder for help from the SQL pane if it contains a partial expression:

For reference, the ArcMap tool for this is below.  Everything is available in one window. You can alternate between the SQL expression pane and the clause building widgets with impunity.  The ArcMap tool is less concerned about whether a valid SQL statement is being formed than the ArcGIS Pro window is.  The ArcGIS Pro window might also need a Verify button and to stop worrying about whether a valid statement exists while the widgets are being manipulated. 



I agree the ArcPro approach does feel clunky and requires you to click more. That initial "New Expression" button did not exist in earlier versions of ArcPro it was straight into the build expression approach. So your are basically suggesting an idea that they (ESRI) have decided was not the way to do things and now it's in this very clicky approach.

Again I agree that being able to see the expression build up, as is the way it is done in ArcMap does seem much more intuitive. As you point out swapping in/out of SQL mode you loose the ability to select values and if you don't complete a valid expression it irritatingly refuses to go back to expression builder mode.

I would prefer an ArcMap interface, it's faster, flexible and more intuitive but I suspect we won't get it. I don't know who they designed this UI for; no power user would have chosen this approach. I have never understood why they have abandoned a decade of tried and tested UI's for what it is now.


Status changed to: Under Consideration

Thanks for the suggestion @Gerald_Daumiller. My apologies as somehow I missed this idea. There are two main issues as I interpret.

  1. the initial landing page --> I'm pretty sure you know that it is removed a few releases ago. I'm just adding this for any future references.
  2. consolidate both design mode and sql mode. I personally thing that is a very good suggestion. I've moved the idea to 'under consideration'. We will keep monitoring this idea for any future inputs/suggestions.




While implementing this it would be nice if it included support for the BETWEEN operator, so the Expression Builder doesn't turn off when you use it.


I've never been a fan of the dropdowns that Pro uses here, especially replacing operators with text that you can't even read. I'd rather see a complete reversion.


hi @rburke 

would you mind let us know what doesn't work for you? And please give us suggestions that would live to see and improve the user experience..



@TanuHoque  thanks for reaching out. I've authored several individual ideas related to this on here.