Q43:「Mysql command line」では文章が出ますが「MZ」ではテーブルに「concat(b.`order_number`,concat('-',concat(a.`number`,coalesce(concat('',`turn`),''))))」の列にデータが反映去されません
Q43-1:
添付したSQLをご覧下さい。
「Mysql command line」では文章が出ますが「MZ」ではテーブルに
「concat(b.`order_number`,concat('-',concat(a.`number`,coalesce(concat('',`turn`),''))))」
の列にデータが反映されません。また、SQL文の最後「order by a.`number`」を削除すればMZでもテーブルにデータが反映されます。なぜでしょうか?
なお、以下のようにキャストを実行したら反映されました。
Cast(concat(b.`order_number`,concat('-',concat(a.`number`,coalesce(concat('',`turn`),''))))as char)
A43-1:
お問い合わせ頂いたMySQLで「concat()」関数使用時に、「order by」を付けると、データが読込まれなくなるという現象ですが、MZPlatformの問題ではなく、MySQLとJDBCドライバーに因るものと思われます。
「concat()」時には結果は文字列型(char,varchar)になりそうなものですが、例えば数値などが含まれていると別な型(binary)になる場合があり、それをJDBCドライバーが上手く受け取れず、エラーになるようです。
MySQLとドライバーのバージョンにも依るのですがMySQL側の仕様とお考え下さい。
解決方法としてはご連絡頂いたように、「castする」ということになります。