Sie müssen Ihre SQL-Abfrage richtig zitieren. Wenn Sie sich die Syntaxhervorhebung in Ihrer Frage (oder einer IDE) ansehen, werden Sie feststellen, dass die einfachen Anführungszeichen nicht wie erwartet funktionieren.
Ändern Sie die äußersten Anführungszeichen in doppelte Anführungszeichen – wenn Sie alles in einer Zeile haben möchten – oder in dreifache Anführungszeichen, wenn Sie es über mehrere Zeilen hinweg möchten:
query = """SELECT*
FROM TRANSACTION
WHERE DIA_DAT >=to_date('15.02.28 00:00:00', 'YY.MM.DD HH24:MI:SS')
AND (locations <> 'PUERTO RICO'
OR locations <> 'JAPAN')
AND CITY='LONDON'"""
df_ora = pd.read_sql(query, con=connection)