文字列の最後の文字に基づいて値を選択しようとしているMySQL select文を書き込もうとしています。問題は...これらの値は文字列の最後に二重の文字があり、結果を取得するときにそれらを区別することができません。私は上記の#2を返すようにしたいとき、私は現在、両方の値を返しますを使用していますMySQLの文字列の最後にダブル文字を選択する
1. Mens 3's AA
2. Mens 3's A
クエリ
は、例えば...私は、テーブルに以下の2つの値を持っています。私は、文字列の末尾に重複した文字を含む値を持っているとき、私は本当に1を選択するための最善のアプローチを理解する必要が
SELECT divisions.div_id, divisions.div_lname
FROM divisions
WHERE LEFT(divisions.div_lname,1) = "M"
AND divisions.div_lname LIKE '%3%'
AND RIGHT(divisions.div_lname,1) = 'A'
ORDER BY divisions.div_nop, divisions.div_order
ではなく、他:ここではクエリです。動作する正規表現のアプローチはありますか?
は、常に最後の2文字を確認します。スペースA ...対AA ...または、より良いことに、最後のスペースを見つけて、比較のためにすべてのものを取ってください。そして最高です...データを標準化してください...そして、この問題はなくなります。 – xQbert
右(divisions.div_lname、2)= 'A'? – RST
'right(_、)'は長さnの接尾辞を抽出するので、 'AND right(divisions.div_lname、2)<> 'AA'または' AND right(divisions.div_lname、2 )<> 'A' 'をあなたの不要なパターンを除外するか望むサフィックスを確認するかによって決めることができます。 –
collapsar