MySQL REGEXPを使用して数値を無視し、文字列と「/」のみを取得します
これには、REGEXP_REPLACE()を使用します。まずテーブルを作成しましょう-
mysql> create table DemoTable1595 -> ( -> StudentCode varchar(50) -> ); Query OK, 0 rows affected (0.44 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable1595 values('200 John'); Query OK, 1 row affected (0.22 sec) mysql> insert into DemoTable1595 values('101 Carol/400 Taylor'); Query OK, 1 row affected (0.72 sec) mysql> insert into DemoTable1595 values('101 302 405 Sam/9870'); Query OK, 1 row affected (0.28 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select * from DemoTable1595;
これにより、次の出力が生成されます-
+----------------------+ | StudentCode | +----------------------+ | 200 John | | 101 Carol/400 Taylor | | 101 302 405 Sam/9870 | +----------------------+ 3 rows in set (0.00 sec)
これは、MySQL REGEXPを使用して数値を無視し、文字列と'/'-
のみを取得するためのクエリです。mysql> select regexp_replace(StudentCode,' *[0-9]+([.,][0-9]+)?(/[0-9]+([.,][0-9]+)?)? *', '') as `GetOnlyStringand/` from DemoTable1595;
これにより、次の出力が生成されます-
+-------------------+ | GetOnlyStringand/ | +-------------------+ | John | | Carol/Taylor | | Sam/ | +-------------------+ 3 rows in set (0.00 sec)
-
MySQL REGEXPは、特定の数値で始まる文字列+数値レコードをフェッチしますか?
これには、REGEXPを使用して、特定の番号で始まるレコードをフェッチします。構文は次のとおりです。 Select yourColumnName1,yourColumnName2 from yourTableName where yourColumnName2 REGEXP '^yourStringValue[yourNumericValue]'; テーブルを作成しましょう- mysql> create table demo45 -> ( −> id int not null auto_increment primary key, −
-
MySQLで文字列を暗号化および復号化しますか?
MySQLで暗号化および復号化するには、MySQLでAES_ENCRYPT()およびAES_DECRYPT()を使用します- insert into yourTableName values(AES_ENCRYPT(yourValue,yourSecretKey)); select cast(AES_DECRYPT(yourColumnName, yourSecretKey) as char) from yourTableName; 上記の構文を理解するために、最初にテーブルを作成しましょう- mysql> create table demo63 −> ( &min