From 8364dcc49f48f45fab1f97764f577785f45cbea7 Mon Sep 17 00:00:00 2001 From: Yako Date: Fri, 17 Oct 2014 22:32:13 +0800 Subject: [PATCH] improve sqlwall --- .../com/alibaba/druid/wall/spi/WallVisitorUtils.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/alibaba/druid/wall/spi/WallVisitorUtils.java b/src/main/java/com/alibaba/druid/wall/spi/WallVisitorUtils.java index 0bba971376..81fecd25b6 100644 --- a/src/main/java/com/alibaba/druid/wall/spi/WallVisitorUtils.java +++ b/src/main/java/com/alibaba/druid/wall/spi/WallVisitorUtils.java @@ -2182,16 +2182,25 @@ public class WallVisitorUtils { if (query instanceof SQLSelectQueryBlock) { SQLSelectQueryBlock queryBlock = (SQLSelectQueryBlock) query; SQLTableSource from = queryBlock.getFrom(); + + if (queryBlock.getSelectList().size() < 1) { + return false; + } if (from == null) { boolean itemIsConst = true; + boolean itemHasAlias = false; for (SQLSelectItem item : queryBlock.getSelectList()) { if (item.getExpr() instanceof SQLIdentifierExpr || item.getExpr() instanceof SQLPropertyExpr) { itemIsConst = false; break; } + if(item.getAlias() != null ) { + itemHasAlias = true; + break; + } } - if (itemIsConst) { + if (itemIsConst && !itemHasAlias) { return true; } else { return false;