Currently executing queries like: 

```
SELECT * FROM system.tables LIMIT 10;\G 
SELECT * FROM system.tables LIMIT 10\G;
```

Ends up with a syntax error.

From the documentation, it should not be an error:

> You can specify \G instead of or after the semicolon.


if (send_external_tables)
        connection->sendExternalTablesData(data
}
void ClientBase::onData(Block & block, ASTPtr parsed_query)
{
    if (!block)
        return;
    proc= block.rows(
    /// Even if all blocks are empty, we still need to initialize the output stream to write empty resultset.
    initBlockOutputStream(block, parsed_query
    /// The header block containing zero rows was used to initialize
    /// output_format, do not output it.
     data if we're fuzzing.
    if (block.rows() == 0 || (query_fuzzer_runs != 0 && processed_rows >= 100))
        return;
    /// If results are written INTO OUTFILE, we can avoid clearing progress to avoid flicker.
    if (need_render_progress && (stdout_is_a_tty || is_interactive) && !select_into_file)
        progress_indication.clearProgressOutput(
    try
    {
        output_format->write(materializeBlock(block)
        written_first_block = true;
    }
    catch (const Exception &)
    {
        /// Catch client errors like NO_ROW_DELIMITER
        throw LocalFormatError(getCurrentExceptionMessage(print_stack_trace), getCurrentExceptionCode()
    }
    /// Received data block is immediately displayed to the user.
    output_format->flush(