2

私はしばしばこの種のSQLステートメントを持っています

SELECT LENGTH(col_name) FROM `table` WHERE *condition*

mySQLテーブルの特定の行の特定の列の内容のサイズを確立します。ただし、特定の行のすべての列のコンテンツの長さの合計をフェッチする単一のSQLステートメントがあることは私にはわかりません。問題の列はすべてVARCHARSであることを追加する必要があります。

はい、行全体を次のようにフェッチすることでこれを実行できることを知っています。

SELECT * FROM `table` WHERE *condition*

結果の行の内容を文字列に折りたたんでその文字列の長さを取得しますが、この作業を行うためのより効率的な1つのライナーはないかと思いました。ヒントをいただければ幸いです。

4

3 に答える 3

5

まあ、私はCHAR_LENGTH以上を使用することを好むLENGTH

SELECT CHAR_LENGTH(CONCAT(col1,col2,col3)) 
FROM tableName 
WHERE...

リンクされた質問から

LENGTH()は、バイト単位で測定された文字列の長さを返します。

CHAR_LENGTH()は、文字で測定された文字列の長さを返します。

于 2012-11-16T08:05:15.450 に答える
0

やってみました:

SELECT char_length(col_name)+ char_length(col_name2)tableFROMWHERE条件

于 2012-11-16T08:03:26.267 に答える