MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLでINITCAP()機能の反対を実装するにはどうすればよいですか?


INITCAP()メソッドは、すべての単語の最初の文字を大文字で表示し、残りを小文字で表示します。

反対の機能を実装するには、MySQLで独自の関数を作成する必要があります。これが関数です-

mysql> delimiter //
mysql> create function convertFirstLetterToLowerAndRemainingToCapital(value varchar(250))
   returns varchar(250)
   deterministic
   begin
   declare valueLength int;
   declare l int;
   set valueLength = char_length(value);
   set value = upper(value);
   set l = 0;
   while (l < valueLength ) do
      if (mid(value,l ,1) = ' ' or l = 0) then
         if (l < valueLength ) then
            set value= concat(
               left(value,l),
               lower(mid(value,l+ 1,1)),
               right(value,valueLength - l - 1)
            );
         end if;
      end if;
   set l = l + 1;
   end while;
   return value;
   end;
   //
Query OK, 0 rows affected (0.17 sec)
mysql> delimiter ;

selectステートメントを使用して関数を呼び出します-

mysql> select convertFirstLetterToLowerAndRemainingToCapital('Introduction To MySQL');

これにより、次の出力が生成されます-

+-------------------------------------------------------------------------+
| convertFirstLetterToLowerAndRemainingToCapital('Introduction To MySQL') |
+-------------------------------------------------------------------------+
| iNTRODUCTION tO mYSQL                                                   |
+-------------------------------------------------------------------------+
1 row in set, 2 warnings (0.04 sec)

  1. MySQLで日付レコードを持つテーブルの日付を変更するにはどうすればよいですか?

    日付を変更して年を追加する必要があるとします。このためには、DATE_ADD()とともにUPDATEコマンドを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1984    (    ShippingDate date    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1984 values('2014

  2. MySQLの最後に特定の値を並べ替える方法は?

    これには、ORDERBYを使用できます。テーブルを作成しましょう- mysql> create table demo57 −> ( −> id int not null auto_increment primary key, −> full_name varchar(20) −> ); Query OK, 0 rows affected (1.60 sec) 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 mysql> insert into demo57(full_name) valu