# Logstash JDBC Input - SQL Query

**URL:** https://discuss.elastic.co/t/logstash-jdbc-input-sql-query/41798
**Category:** Logstash
**Created:** [February 15, 2016, 2:39pm UTC](https://discuss.elastic.co/t/logstash-jdbc-input-sql-query/41798 "2016-02-15T14:39:20Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![Architha](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/architha/32/92477_2.png) [@Architha](https://discuss.elastic.co/u/Architha)
#### Post date: [February 15, 2016, 2:39pm UTC](https://discuss.elastic.co/t/logstash-jdbc-input-sql-query/41798/1 "2016-02-15T14:39:21Z")

</div>

Hi all,

I have a table where the data is in the following manner :

![](https://us1.discourse-cdn.com/elastic/original/2X/f/fb0c2e14fabf9f0c8ae04f346f75745d0f00e3a2.png)

My requirement is a documnet on Elastic Search that is like :

> {  
> "\_index" : "Library",  
> "\_type" : "books",  
> "\_id" : "1",  
> "\_score" : 1.0,  
> "\_source" : {  
> "libraryid" : 1,  
> {  
> "books" :  
> [  
> { "id": "1", "performance": "60%","Yieldvalue":"0.78" },  
> { "id": "2","performance": "40%","Yieldvalue":"0.79" },  
> { "id": "3", "performance": "30%","Yieldvalue":"0.38" }  
> ]  
> }  
> "@version" : "1",  
> "@timestamp" : "2016-02-15T13:38:56.023Z"  
> }

Using JDBC input plugin , i can only give a SQL query which takes the data from table and create documents on ES.  
How can i achieve this kind of documents from table similar to above ? Please help.

---

<div class="post-metadata">

### Author: ![Architha](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/architha/32/92477_2.png) [@Architha](https://discuss.elastic.co/u/Architha)
#### Post date: [February 16, 2016, 6:46am UTC](https://discuss.elastic.co/t/logstash-jdbc-input-sql-query/41798/2 "2016-02-16T06:46:18Z")

</div>

Can filters plugins in Logstash help ? If yes , kindly point me to that filter.

---

<div class="post-metadata">

### Author: ![buinauskas\_evaldas](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/buinauskas_evaldas/32/31439_2.png) [@buinauskas\_evaldas](https://discuss.elastic.co/u/buinauskas_evaldas)
#### Post date: [December 20, 2016, 8:22pm UTC](https://discuss.elastic.co/t/logstash-jdbc-input-sql-query/41798/3 "2016-12-20T20:22:30Z")

</div>

If that's still relevant, I am using sql server and I've prepared query in a manner where I bring back nested documents as xml structure and using xml filter create nested documents out of it

---

<div class="post-metadata">

### Author: ![iti](https://avatars.discourse-cdn.com/v4/letter/i/b19c9b/32.png) [@iti](https://discuss.elastic.co/u/iti)
#### Post date: [December 22, 2016, 11:56pm UTC](https://discuss.elastic.co/t/logstash-jdbc-input-sql-query/41798/4 "2016-12-22T23:56:26Z")

</div>

Just use aggregate filter plugin.

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [July 6, 2017, 4:29am UTC](https://discuss.elastic.co/t/logstash-jdbc-input-sql-query/41798/5 "2017-07-06T04:29:41Z")

</div>


