> For the complete documentation index, see [llms.txt](https://docs.thingsup.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.thingsup.io/actions/mysql-query-action.md).

# MySQL Query Action

This provides a way to run MySQL Query. Before adding MySQL Query Action, user has to define a [**MySQL Connection**](/connections/mysql-connection.md). User need to provide following parameters to add MySQL Query Action.

#### Query

User can write necessary MySQL static query or MySQL query based on dynamic fields here.

```
SELECT * FROM `books` WHERE `author` = `HC Verma`
```

```
SELECT * FROM test WHERE tutorial_id=1
```

User can write MySQL Query with "?" present on Dynamic Fields also.

```
//Example 1
SELECT * FROM `books` WHERE `author` = ? AND `ID` = ?

//params.push(payload.author);  //as a function
//params.push(payload.id);
```

```
//Example 2
SELECT * FROM test WHERE tutorial_id=?

//params.push(payload.id);  //as a function
```

```
//Example 3
SELECT * FROM `sanju` WHERE `tutorial_id`=? AND `tutorial_title`=?

//params.push(payload.id);    //as a function
//params.push(payload.title);
```

#### Function

* User can write JavaScript code to supply dynamic data to query. Here the "payload" object and "params" array object available in this code which can be used to supply dynamic data to written query.&#x20;
* "payload" object is supplied from Action Trigger like Rules, Action Command etc.
* '?' will be replaced sequentially from params array contents.

```
params.push(payload.author);
params.push(payload.id);
```

#### Connection ID

User need to provide a Connection ID of MySQL database connection.

![Add MySQL Query Action](/files/k4YObWAG2p3vzdrbY4Zr)

Please note the following points:

{% hint style="info" %}

* "payload" object is supplied from Action Trigger like Rules, Action Command etc.
* '?' in Query will be replaced sequentially from params array.
* In case of Static Query don't write anything in Function
* Data Response of MySQL query will be available as Action Response.
  {% endhint %}
