■SI Object Browser 掲示板
|
ユーザの皆様、開発者、サポート担当者の交流のための掲示板です! ユーザーの皆様同士で教え合ったりもできる交流の場にしたいと思っていますので、相互協力をよろしくお願いします。 なお、過去に同じようなQ&Aがあるケースも多いので、投稿前にキーワード検索してみてください。 |
|
| ※各投稿のカラーは対象となる製品に対応しています。【■…OB ■…OBER ■…全般 ■…その他】 ※ライセンスに関するお問合せにつきましては、お問い合わせページよりご連絡いただきますようお願いいたします。 ※誹謗中傷や公序良俗に反する書き込みはご遠慮ください。運営側の判断によりメッセージを削除する場合があります。 ※環境依存や技術的調査が必要な問題については掲示板上ではお答えしかねます。ご了承ください。 | |
LISTAGGをSQL整形でGROUPがGROUP BYに
2019/03/22 18:32
OB
2
初心者その1
SI ObjectBrowser 18 のSQL整形で以下のSQLを整形すると
GROUP が GROUP BY になります。
整形前
select LISTAGG(name) WITHIN GROUP (order by null) concat_name
↓
整形後
SELECT LISTAGG(NAME) WITHIN
GROUP BY (
ORDER BY NULL) CONCAT_NAME
これは正しい動作ですか。
私の使っているOracleでは整形後のSQLを実行すると ORA-00906 になります。
GROUP が GROUP BY になります。
整形前
select LISTAGG(name) WITHIN GROUP (order by null) concat_name
↓
整形後
SELECT LISTAGG(NAME) WITHIN
GROUP BY (
ORDER BY NULL) CONCAT_NAME
これは正しい動作ですか。
私の使っているOracleでは整形後のSQLを実行すると ORA-00906 になります。
返信を投稿
OB
OBサポート
こんにちは。
OBサポートです。
お問い合わせいただいた件につきましてですが、現状ではLISTAGG関数に対応しておらず
WITHIN 「GROUP」がGROUP BY句の一部として判断されるためご報告のような現象が発生しております。
LISTAGG関数を含むSQLを整形した場合は上記の誤判定に伴い、GROUPの後に
「BY」を補う動作となっておりますためSQLの構文エラーが発生する状況となります。
SQL整形を実施されましたのち、手動にて「BY」を消去いただくことで
構文エラーは発生しなくなるものと存じますので、お手数ですが
ご確認いただけますと幸いです。
何卒、よろしくお願い申し上げます。
OBサポートです。
お問い合わせいただいた件につきましてですが、現状ではLISTAGG関数に対応しておらず
WITHIN 「GROUP」がGROUP BY句の一部として判断されるためご報告のような現象が発生しております。
LISTAGG関数を含むSQLを整形した場合は上記の誤判定に伴い、GROUPの後に
「BY」を補う動作となっておりますためSQLの構文エラーが発生する状況となります。
SQL整形を実施されましたのち、手動にて「BY」を消去いただくことで
構文エラーは発生しなくなるものと存じますので、お手数ですが
ご確認いただけますと幸いです。
何卒、よろしくお願い申し上げます。
返信を投稿
OB
初心者その1
ご回答いただき、ありがとうございます。
以下の件、承知しました。
>お問い合わせいただいた件につきましてですが、現状ではLISTAGG関数に対応しておらず
>
>WITHIN 「GROUP」がGROUP BY句の一部として判断されるためご報告のような現象が発生しております。
>
>LISTAGG関数を含むSQLを整形した場合は上記の誤判定に伴い、GROUPの後に
>「BY」を補う動作となっておりますためSQLの構文エラーが発生する状況となります。
>
>SQL整形を実施されましたのち、手動にて「BY」を消去いただくことで
>構文エラーは発生しなくなるものと存じますので、お手数ですが
>ご確認いただけますと幸いです。
今後とも宜しくお願いいたします。
以下の件、承知しました。
>お問い合わせいただいた件につきましてですが、現状ではLISTAGG関数に対応しておらず
>
>WITHIN 「GROUP」がGROUP BY句の一部として判断されるためご報告のような現象が発生しております。
>
>LISTAGG関数を含むSQLを整形した場合は上記の誤判定に伴い、GROUPの後に
>「BY」を補う動作となっておりますためSQLの構文エラーが発生する状況となります。
>
>SQL整形を実施されましたのち、手動にて「BY」を消去いただくことで
>構文エラーは発生しなくなるものと存じますので、お手数ですが
>ご確認いただけますと幸いです。
今後とも宜しくお願いいたします。
返信を投稿
OB