1

sqlalchemy は私のためにこのクエリを生成しています:

SELECT INSTRUMENT_GROUP.id_imnt_grp AS "INSTRUMENT_GROUP_id_imnt_grp",INSTRUMENT_GROUP.nm_imnt_grp AS "INSTRUMENT_GROUP_nm_imnt_grp", INSTRUMENT_GROUP.type_imnt_grp AS "INSTRUMENT_GROUP_type_imnt_grp", anon_1."IMNT_GRP_MEMBERS_id_imnt_grp" AS "anon_1_IMNT_GRP_MEMBERS__1" FROM (SELECT IMNT_GRP_MEMBERS.id_imnt_grp AS "IMNT_GRP_MEMBERS_id_imnt_grp" FROM IMNT_GRP_MEMBERS WHERE 452 = IMNT_GRP_MEMBERS.id_imnt) AS anon_1 JOIN INSTRUMENT_GROUP ON INSTRUMENT_GROUP.id_imnt_grp = anon_1."IMNT_GRP_MEMBERS_id_imnt_grp" ORDER BY anon_1."IMNT_GRP_MEMBERS_id_imnt_grp"

ただし、pyodbc 経由で Sybase 15.5 ドライバーを使用して、sqlalchemy 経由で実行することはできません。ただし、jconnect ドライバーを使用して SQuirreL SQL 経由で正常に動作します。

これがなぜなのか、またはどのように修正するのかについてのアイデアはありますか?

4

1 に答える 1

0

INNER JOIN を実行している場合は、JOIN の前に INNER という単語を追加して、クエリの JOIN 部分を次のように変更してみてください。

anon_1 INNER JOIN INSTRUMENT_GROUP 
ON INSTRUMENT_GROUP.id_imnt_grp = anon_1."IMNT_GRP_MEMBERS_id_imnt_grp"

LEFT または RIGHT OUTER JOIN の場合は、それに応じて変更します。たとえば、LEFT JOIN または RIGHT JOIN です。

于 2012-06-05T08:25:23.480 に答える