@@ -581,7 +581,7 @@ def getFields(self, query):
581
581
"""
582
582
583
583
prefixRegex = r"(?:\s+(?:FIRST|SKIP|LIMIT(?: \d+)?)\s+\d+)*"
584
- fieldsSelectTop = re .search (r"\ASELECT\s+TOP(\s+[\d] |\s*\([^)]+\))\s+(.+?)\s+FROM" , query , re .I )
584
+ fieldsSelectTop = re .search (r"\ASELECT\s+TOP(\s+\d+ |\s*\([^)]+\))\s+(.+?)\s+FROM" , query , re .I )
585
585
fieldsSelectRownum = re .search (r"\ASELECT\s+([^()]+?),\s*ROWNUM AS LIMIT FROM" , query , re .I )
586
586
fieldsSelectDistinct = re .search (r"\ASELECT%s\s+DISTINCT\((.+?)\)\s+FROM" % prefixRegex , query , re .I )
587
587
fieldsSelectCase = re .search (r"\ASELECT%s\s+(\(CASE WHEN\s+.+\s+END\))" % prefixRegex , query , re .I )
@@ -729,7 +729,7 @@ def concatQuery(self, query, unpack=True):
729
729
concatenatedQuery = concatenatedQuery .replace ("SELECT " , "'%s'+" % kb .chars .start , 1 )
730
730
concatenatedQuery += "+'%s'" % kb .chars .stop
731
731
elif fieldsSelectTop :
732
- topNum = re .search (r"\ASELECT\s+TOP(\s+[\d] |\s*\([^)]+\))\s+" , concatenatedQuery , re .I ).group (1 )
732
+ topNum = re .search (r"\ASELECT\s+TOP(\s+\d+ |\s*\([^)]+\))\s+" , concatenatedQuery , re .I ).group (1 )
733
733
concatenatedQuery = concatenatedQuery .replace ("SELECT TOP%s " % topNum , "TOP%s '%s'+" % (topNum , kb .chars .start ), 1 )
734
734
concatenatedQuery = concatenatedQuery .replace (" FROM " , "+'%s' FROM " % kb .chars .stop , 1 )
735
735
elif fieldsSelectCase :
0 commit comments