文字列を小文字に変換するMySQLコマンドはありますか?


123

現在大文字と小文字が混在しているキーワードのMySQLデータベースがあります。ただし、すべて小文字に変換したい。MySQLまたはMySQLとPHPを使用してこれを行う簡単なコマンドはありますか?


大文字の文字を使用してユーザー名を保存することをお勧めします友人からのダンプも使用していると思います。
バッファロー

回答:


248
UPDATE table SET colname=LOWER(colname);

列の照合がに設定されているascii_bin場合、これによりすべてが自動的に小文字に変換されますか、それとも間違っていますか?
oldboy

28

はい、関数はLOWER()またはLCASE()です(どちらも同じことを行います)。

例えば:

select LOWER(keyword) from my_table


9

関数LOWER()またはLCASE()を使用できます。

これらは、列または文字列リテラルの両方で使用できます。例えば

SELECT LOWER(column_name) FROM table a;

または

SELECT column_name FROM table a where column = LOWER('STRING')

LCASE()は、両方の例でLOWER()の代わりに使用できます。



1

単に使用してください:

UPDATE `tablename` SET `colnameone`=LOWER(`colnameone`);  

または

UPDATE `tablename` SET `colnameone`=LCASE(`colnameone`);

どちらの機能も同じように機能します。


0

興味深いことに、フィールド名は名前が変更され、関数で参照した場合、エイリアス(独自の名前にすることもできます)を指定しない限り、その値は取得されません。

例:関数を使用してフィールド名の値を動的に取得します。

function ColBuilder ($field_name) {

While ($result = DB_fetch_array($PricesResult)) {
$result[$field_name]
}

}

私のクエリは:SELECT LOWER(itemID)、…など

次のように変更する必要があります:SELECT LOWER(itemID)as itemID、…など。


これは答えのように聞こえませんか?
Dieter Meemken

特定の状況でLOWER()を使用すると、エイリアスを追加しないと予期した結果が得られない可能性があることを警告して、回答を完了します。
HD FrenchFeast 2018

-3

LOWER関数を使用して、データまたは文字列を小文字に変換します。

select LOWER(username) from users;

または

select * from users where LOWER(username) = 'vrishbh';

6
これは、5年前の回答にはなかった何を追加しますか?
Andrew

-6

私はあなたが使用できるphpを信じています

strtolower() 

phpでテーブル内のすべてのエントリを読み取ってから、そのコマンドを使用して小文字で出力することができます。


OPはMySQLまたはMySQL / PHPを要求しました。
starryknight64
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.