use of com.alibaba.druid.sql.dialect.sqlserver.parser.SQLServerStatementParser in project druid by alibaba.
the class SQLServerSelectTest method test_isEmpty.
public void test_isEmpty() throws Exception {
String sql = "USE AdventureWorks2008R2;";
String expect = "USE AdventureWorks2008R2";
SQLServerStatementParser parser = new SQLServerStatementParser(sql);
SQLStatement stmt = parser.parseStatementList().get(0);
String text = TestUtils.outputSqlServer(stmt);
Assert.assertEquals(expect, text);
// System.out.println(text);
}
use of com.alibaba.druid.sql.dialect.sqlserver.parser.SQLServerStatementParser in project druid by alibaba.
the class SQLServerSelectTest11 method test_simple.
public void test_simple() throws Exception {
String sql = "SELECT 1";
String expect = "SELECT 1";
SQLServerStatementParser parser = new SQLServerStatementParser(sql);
SQLStatement stmt = parser.parseStatementList().get(0);
String text = TestUtils.outputSqlServer(stmt);
Assert.assertEquals(expect, text);
// System.out.println(text);
}
use of com.alibaba.druid.sql.dialect.sqlserver.parser.SQLServerStatementParser in project druid by alibaba.
the class SQLServerSelectTest12 method test_simple.
public void test_simple() throws Exception {
String sql = //
"SELECT Row, Name " + //
"FROM(" + //
"SELECT ROW_NUMBER() OVER (ORDER BY ProductID) AS Row, Name " + //
"FROM Product " + //
") AS ProductsWithRowNumbers " + "WHERE Row >= 6 AND Row <= 10";
String expect = //
"SELECT Row, Name" + //
"\nFROM (SELECT ROW_NUMBER() OVER (ORDER BY ProductID) AS Row, Name" + //
"\n\tFROM Product" + //
"\n\t) ProductsWithRowNumbers" + //
"\nWHERE Row >= 6" + "\n\tAND Row <= 10";
SQLServerStatementParser parser = new SQLServerStatementParser(sql);
SQLStatement stmt = parser.parseStatementList().get(0);
String text = TestUtils.outputSqlServer(stmt);
Assert.assertEquals(expect, text);
// System.out.println(text);
}
use of com.alibaba.druid.sql.dialect.sqlserver.parser.SQLServerStatementParser in project druid by alibaba.
the class SQLServerSelectTest14 method test_simple.
public void test_simple() throws Exception {
String sql = //
"SELECT " + //
" a.* " + //
"FROM " + //
" ( " + //
" SELECT " + //
" row_number () over (ORDER BY a.time_add DESC) ROW, " + //
" a.detail_no AS detailNo, " + //
" a.ba_id AS baId, " + //
" a.ba_name AS baName, " + //
" a.tran_no AS tranNo, " + //
" a.tran_name AS tranName, " + //
" a.tran_type AS tranType, " + //
" a.balance_type AS balanceType, " + //
" a.detail_income AS detailIncome, " + //
" a.detail_payout AS detailPayout, " + //
" a.before_balance AS beforeBalance, " + //
" a.after_balance AS afterBalance, " + //
" a.time_add AS timeAdd, " + //
" a.user_add AS userAdd, " + //
" a.remark AS remark, " + //
" ( " + //
" SELECT " + //
" top 1 t.param_name " + //
" FROM " + //
" config.sys_params t " + //
" WHERE " + //
" t.param_type = 2 " + //
" AND t.param_value = a.tran_type " + //
" ) AS tranTypeName " + //
" FROM " + //
" bussiness.account_detail a " + //
" WHERE " + //
" 1 = 1 " + //
" AND a.time_add >= 2 " + //
" AND a.time_add <= 3 " + //
" ) a " + //
"WHERE " + //
" a.ROW BETWEEN (10+2) AND 20 ";
String expect = "SELECT a.*" + //
"\nFROM (SELECT ROW_NUMBER() OVER (ORDER BY a.time_add DESC) AS ROW, a.detail_no AS detailNo, a.ba_id AS baId, a.ba_name AS baName, a.tran_no AS tranNo" + //
"\n\t\t, a.tran_name AS tranName, a.tran_type AS tranType, a.balance_type AS balanceType, a.detail_income AS detailIncome, a.detail_payout AS detailPayout" + //
"\n\t\t, a.before_balance AS beforeBalance, a.after_balance AS afterBalance, a.time_add AS timeAdd, a.user_add AS userAdd, a.remark AS remark" + //
"\n\t\t, (" + //
"\n\t\t\tSELECT TOP 1 t.param_name" + //
"\n\t\t\tFROM config.sys_params t" + //
"\n\t\t\tWHERE t.param_type = 2" + //
"\n\t\t\t\tAND t.param_value = a.tran_type" + //
"\n\t\t\t) AS tranTypeName" + //
"\n\tFROM bussiness.account_detail a" + //
"\n\tWHERE 1 = 1" + //
"\n\t\tAND a.time_add >= 2" + //
"\n\t\tAND a.time_add <= 3" + //
"\n\t) a" + //
"\nWHERE a.ROW BETWEEN 10 + 2 AND 20";
SQLServerStatementParser parser = new SQLServerStatementParser(sql);
SQLStatement stmt = parser.parseStatementList().get(0);
String text = TestUtils.outputSqlServer(stmt);
Assert.assertEquals(expect, text);
// System.out.println(text);
}
use of com.alibaba.druid.sql.dialect.sqlserver.parser.SQLServerStatementParser in project druid by alibaba.
the class SQLServerSelectTest15 method test_simple.
public void test_simple() throws Exception {
//
String sql = "SELECT TOP 50 PERCENT * FROM Persons";
String expect = //
"SELECT TOP 50 PERCENT *\n" + "FROM Persons";
SQLServerStatementParser parser = new SQLServerStatementParser(sql);
SQLStatement stmt = parser.parseStatementList().get(0);
String text = TestUtils.outputSqlServer(stmt);
Assert.assertEquals(expect, text);
// System.out.println(text);
}
Aggregations