As you work in the editor, DataGrip analyzes your code, searches for ways to optimize it, and detects potential and actual problems.
As soon as the IDE finds a way to alter your code, it displays a yellow bulb icon in the editor next to the current line. By clicking this icon, you can view intention actions available in the current context. Intention actions cover a wide range of situations from warnings to optimization suggestions. You can view the full list of intentions and customize them in the Settings/Preferences dialog Ctrl+Alt+S.
A red bulb with an exclamation mark indicates that DataGrip has detected a problem, and prompts you to select an associated fix — a quick-fix. Quick-fixes and intention actions together are called context actions.
Apply intention actions
Click the bulb icon (or press Alt+Enter) to open the list of suggestions and select an action from the list.
For some intention actions, you can open a preview by pressing Ctrl+Shift+I.
Press Enter to apply the selected intention.
View all intention actions
You can view the full list of available intention actions, and disable actions that you do not need:
Disable intention actions on the fly
Click the light bulb icon (or press Alt+Enter) to open the list of suggestions.
Select the action you want to disable, and click the right arrow.
Examples of intention actions
Introduce a table alias
Place a caret after the table name for which you want to create an alias.
Select Introduce table alias.
Type the alias name.
Apply a quick-fix by hovering a cursor
if DataGrip knows how to fix the problem, you will know about it by just hovering the mouse over the warning. To fix the problem just click the link at the lower left corner of the tooltip. Alternatively, press Alt+Enter and apply a corresponding action.
Replace GROUP BY with DISTINCT
You can convert GROUP BY to DISTINCT if all the columns of the SELECT clause are presented in the GROUP BY clause. To convert the GROUP BY statement, place the caret at GROUP BY, press Alt+Enter, and select Replace GROUP BY with DISTINCT.