From 90ea6fc37926d9d0877fc98223c47b9c25f7f978 Mon Sep 17 00:00:00 2001 From: Toru YAGI Date: Tue, 3 Apr 2018 22:32:20 +0900 Subject: [PATCH 1/2] Fix parse for `AS` (case when column name include `as`, for example last) --- lib/csql.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/csql.rb b/lib/csql.rb index d629ae8..3a491af 100644 --- a/lib/csql.rb +++ b/lib/csql.rb @@ -24,7 +24,7 @@ def execute query if column == "*" columns = File.open(@filepath,'r').gets.chomp.split(',').map{|c|c.strip} else - columns = column.chomp.split(',').map{|c|c.gsub('`','').split(/as|AS/).last.strip} + columns = column.chomp.split(',').map{|c|c.gsub('`','').split(/ (as|AS) /).last.strip} end return result.chomp.split("\n").map{|r| data = r.split(",") From 118a7db0144fbccaa3d8c9f69aa6cb0797209e4d Mon Sep 17 00:00:00 2001 From: Toru YAGI Date: Fri, 6 Apr 2018 23:18:56 +0900 Subject: [PATCH 2/2] Fix parse for table name --- lib/csql.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/csql.rb b/lib/csql.rb index 3a491af..4d7bb5f 100644 --- a/lib/csql.rb +++ b/lib/csql.rb @@ -12,7 +12,7 @@ def initialize(filepath) def execute query begin - modified_query = query.gsub(/csv/, @filepath) + modified_query = query.gsub(/ from csv /, " from #{@filepath} ") result,err,process = Open3.capture3("q -H -d \',\' \'#{modified_query}\'") if err != "" raise CSQLException.new(err)