diff --git a/typo3/sysext/dbal/Classes/Database/SqlParser.php b/typo3/sysext/dbal/Classes/Database/SqlParser.php
index 3100541c86bc51a1cf44a0fa4313d1ab9c49fcc4..020a629b7ab728fced34faafa5f95dc17c6476e5 100644
--- a/typo3/sysext/dbal/Classes/Database/SqlParser.php
+++ b/typo3/sysext/dbal/Classes/Database/SqlParser.php
@@ -694,7 +694,7 @@ class SqlParser extends \TYPO3\CMS\Core\Database\SqlParser {
 														$implodeString = ' ' . $operator . ' ' . $field . ' ' . $v['comparator'];
 
 														// add opening brace before field
-														$lastFieldPos = strpos($output, $field);
+														$lastFieldPos = strrpos($output, $field);
 														$output = substr_replace($output, '(', $lastFieldPos, 0);
 														$output .= implode($implodeString, $listExpressions) . ')';
 													}
diff --git a/typo3/sysext/dbal/Tests/Unit/Database/DatabaseConnectionOracleTest.php b/typo3/sysext/dbal/Tests/Unit/Database/DatabaseConnectionOracleTest.php
index 3b7a241a61bef2dc1689a0aa1b32fb0520195384..7e57bc6f3cb5df5a611795886b79a78ae5c258e5 100644
--- a/typo3/sysext/dbal/Tests/Unit/Database/DatabaseConnectionOracleTest.php
+++ b/typo3/sysext/dbal/Tests/Unit/Database/DatabaseConnectionOracleTest.php
@@ -972,4 +972,28 @@ class DatabaseConnectionOracleTest extends AbstractTestCase {
 		$expectedQuery = 'SELECT * FROM "tt_content" WHERE "uid" IN (0,1,2,3,4,5,6,7,8,9,10)';
 		$this->assertEquals($expectedQuery, $this->cleanSql($result));
 	}
+
+	/**
+	 * @test
+	 */
+	public function expressionListBracesAreSetCorrectly() {
+		$listMaxExpressions = 1000;
+
+		$mockSpecificsOci8 = $this->getAccessibleMock('TYPO3\\CMS\\Dbal\\Database\\Specifics\\Oci8', array(), array(), '', FALSE);
+		$mockSpecificsOci8->expects($this->any())->method('getSpecific')->will($this->returnValue($listMaxExpressions));
+
+		$items = range(0, 1250);
+		$where = 'uid = 1981 AND uid IN(' . implode(',', $items) . ')';
+		$result = $this->subject->SELECTquery('uid, pid', 'tt_content', $where);
+
+		$chunks = array_chunk($items, $listMaxExpressions);
+		$whereExpr = array();
+		foreach ($chunks as $chunk) {
+			$whereExpr[] = '"uid" IN (' . implode(',', $chunk) . ')';
+		}
+
+		$expectedWhere = '"uid" = 1981 AND (' . implode(' OR ', $whereExpr) . ')';
+		$expectedQuery = 'SELECT "uid", "pid" FROM "tt_content" WHERE ' . $expectedWhere;
+		$this->assertEquals($expectedQuery, $this->cleanSql($result));
+	}
 }
\ No newline at end of file