**How to reproduce**

```
:) CREATE TABLE `test` (`data` Int64) ENGINE=MergeTree() ORDER BY(`data`);

CREATE TABLE test
(
    `data` Int64
)
ENGINE = MergeTree()
ORDER BY data

Ok.

0 rows in set. Elapsed: 0.007 sec. 
```

```
:) INSERT INTO `test` VALUES(100);

INSERT INTO test VALUES

Ok.

1 rows in set. Elapsed: 0.002 sec. 
```

```
:) SELECT * FROM `test`;

SELECT *
FROM test

┌─data─┐
│  100 │
└──────┘

1 rows in set. Elapsed: 0.002 sec. 
```

```
:) SELECT * FROM `test` FORMAT JSON;

SELECT *
FROM test
FORMAT JSON

{
	"meta":
	[
		{
			"name": "data",
			"type": "Int64"
		}
	],

	"data":
	[
		{
			"data": "100"

	],

	"rows": 1,

	"statistics":
	{
		"elapsed": 0.001765624,
		"rows_read": 1,
		"bytes_read": 8
	}
}

1 rows in set. Elapsed: 0.005 sec. 
```

---

**Which ClickHouse server version to use**

I am using the clickhouse-server docker image. Image ID: `3aa412f816ec`

```
# clickhouse-client
ClickHouse client version 20.6.3.28 (official build).
Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 20.6.3 revision 54436.
```

---

**Expected behavior**

In the `FORMAT JSON` output, I expected the `data` field to be a valid JSON. But it is not. The closing curly bracket for the object is missing.

**Error message and/or stacktrace**

![Screenshot from 2020-08-10 20-18-21](https://user-images.githubusercontent.com/12874561/89796005-b8a16500-db46-11ea-840f-b98b4210d76b.png)

/// - stdin is not a terminal. In this se queries are read from it.
        if (!stdin_is_a_tty || config().has("query"))
            is_interactive = false
        std::cout << std::fixed << std::setprecision(3)
        std::cerr << std::fixed << std::setprecision(3)
        if (is_interactive)
            shoClientVersion()
        is_default_format = !config().has("vertil") && !config().has("format")
        if (config().has("vertil"))
            format = config().getString("format", "Vertil")
        else
            format = config().getString("format", is_interactive ? "PrettyCompact" : "TabSeparated")
        format_max_block_size = config().getInt("format_max_block_size", context.getSettingsRef().max_block_size)
        insert_format = "Values"
        /// Setting value from cmd arg overrides one from config
        if (context.getSettingsRef().max_insert_block_size.changed)
            insert_format_max_block_size = context.getSettingsRef().max_insert_block_size
        else
            insert_format_max_block_size = config().getInt("insert_format_max_block_size", context.getSettingsRef().max_insert_block_size)
        if (!is_interactive)
        {
            need_render_progress = config().getBool("progress", false)
            echo_queries = config().getBool("echo", false)
            ignore_error = config().getBool("ignore-error", false)
        
        ClientInfo & client_info = context.getClientInfo()
        client_info.setInitialQuery()
        client_info.quo_key = config().getString("quo_key", "")
        connect()
        /// Initialize DateLUT here to avoid counting time spent here as query execution time.