MySQLで次のエラーが発生します。運が悪かったので、convertも使ってみました。顧客は、顧客IDがBOB102、REB293、REC203のようなデータをフィルタリングできるようにしたいと考えています。200を超える顧客番号などを検索する必要があります。
SQL構文にエラーがあります。6行目の「INTEGER))> 0)'の近くで使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください。
SELECT `orders_jobs`.*
FROM (`orders_jobs`)
INNER JOIN `orders_users` ON `orders_jobs`.`customer` = `orders_users`.`id`
WHERE `orders_jobs`.`active` = 1
AND `orders_users`.`active` = 1
AND ( CAST(orders_users.cust_number AS INTEGER)) > 0 )
現在、これらは必ずしも3文字列の長さであるとは限らず、4文字である可能性もあります。つまり、BKER2938
注:Edgaが述べたように、整数の代わりにUNSIGNEDを使用する必要がありましたが、文字が原因ですべてを0に変換しているため、別の方法がある可能性がありますか?
データ例(フィールドcust_numberの場合): MTQ32499、BGM31620、RES42935、CAM31717、CRED31672(最後の文字は4文字であることに注意してください。3文字または4文字の長さになると思います)
cust_number>40000の顧客のみを返品する必要があります