0
私は最後の6桁に基づいて電話番号を照合しようとしています。問題は、データベース内の数値がさまざまな形式であり、数値の中に空白があることです。MySQL SELECT文がWHERE句の空白を削除します
SELECT * FROM users WHERE trim(phone) LIKE '%123456'
トリムだけで先頭と末尾の空白を削除し、クライアントが数字の間に空白で自分の番号を入力したエントリが見つかりません。それでは、どのようになど、
を 123 456 12 34 56検索内の空白を削除しますか?空白なしの結果は十分ではありません。 replaceを使用してデータベースを更新することもできません。
実際に私はこれをしようとしましたが、私はphpMyAdminに上のエラーを取得:「#1064 - あなたのSQL構文でエラーが発生している。近くに使用する権利構文については、ご使用のMariaDBサーバーのバージョンに対応するマニュアルを確認してください」 。 trim()関数ではエラーは発生しませんが、何らかの理由でreplace()が機能しません。 –
私はいくつかの電話番号がNULLであると推測していますので、それらを空集合に集約する必要があります。 – xQbert
まだ合体では機能しません。置き換えは、SELECTの後にのみ動作します(その結果、数値は右にフォーマットされますが、WHEREの後にはありません)。 –