6

2000 エントリを含むテーブル「写真」があります。そのテーブルには、次の形式のデータを含む という列がphoto_noteありますが、倍率の値は異なります。

Magnification 30x. The resolution varies depending on.....

「解像度」で始まる残りの列データを選択し、それを別のフィールド「photo_note_2」に追加する必要があります

mysqlでこれを行う方法についての提案は大歓迎です

4

1 に答える 1

17

SUBSTRING文字列の一部を返すことができます。INSTR他の文字列内の文字列の位置を返します。

すべての列に「解像度」があることがわかっている場合は、次のようにします。

SELECT SUBSTRING(photo_note, INSTR(photo_note, 'The resolution')) from table;

すべてに'xが付いていることがわかっている場合。'取得する文字列の前に、次に

SELECT SUBSTRING(photo_note, INSTR(photo_note, 'x. ') + 3) from table;

mysqlのすべての文字列関数はここで確認できます。

于 2012-05-11T12:18:52.507 に答える