ソースを参照

use alias 'as.*' in oracle query with join

Unknown 6 年 前
コミット
b334b69398
1 ファイル変更5 行追加1 行削除
  1. 5 1
      statement.go

+ 5 - 1
statement.go

@@ -1183,8 +1183,12 @@ func (statement *Statement) genSelectSQL(columnStr, condSQL string, needLimit, n
 			if statement.Start != 0 || statement.LimitN != 0 {
 			if statement.Start != 0 || statement.LimitN != 0 {
 				oldString := buf.String()
 				oldString := buf.String()
 				buf.Reset()
 				buf.Reset()
+				rawColStr := columnStr
+				if rawColStr == "*" {
+					rawColStr = "at.*"
+				}
 				fmt.Fprintf(&buf, "SELECT %v FROM (SELECT %v,ROWNUM RN FROM (%v) at WHERE ROWNUM <= %d) aat WHERE RN > %d",
 				fmt.Fprintf(&buf, "SELECT %v FROM (SELECT %v,ROWNUM RN FROM (%v) at WHERE ROWNUM <= %d) aat WHERE RN > %d",
-					columnStr, columnStr, oldString, statement.Start+statement.LimitN, statement.Start)
+					columnStr, rawColStr, oldString, statement.Start+statement.LimitN, statement.Start)
 			}
 			}
 		}
 		}
 	}
 	}