Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
0
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

@mix_dvd

SQLite3でデータ中の文字列を一部分だけ置き換えたい

はじめに

ちょっと修正したいと思っていたら、意外と簡単にできたのでメモ。

環境

以下のようなテーブルがあります。

  • テーブル名
    位置情報
項目 内容
日時 yyyy-mm-dd HH:MM:SS形式の文字列
緯度 実数
経度 実数

ここで、PCの日付設定が間違っていて、2019年3月30日のデータが2019年2月18日として登録されていることがわかった。

SELECT文で確認

SELECT 日時, REPLACE(日時, "02-18", "03-30") FROM 位置情報 WHERE 日時 LIKE "%02-18%";

上記のSQLを実行すると以下の結果が返ってきた。

2019-02-18 05:52:07|2019-03-30 05:52:07
2019-02-18 05:52:15|2019-03-30 05:52:15
2019-02-18 05:52:17|2019-03-30 05:52:17
2019-02-18 05:52:19|2019-03-30 05:52:19
2019-02-18 05:52:21|2019-03-30 05:52:21
2019-02-18 05:52:23|2019-03-30 05:52:23
2019-02-18 05:52:25|2019-03-30 05:52:25
2019-02-18 05:52:27|2019-03-30 05:52:27
2019-02-18 05:52:29|2019-03-30 05:52:29
2019-02-18 05:52:31|2019-03-30 05:52:31
2019-02-18 05:52:33|2019-03-30 05:52:33
2019-02-18 05:52:35|2019-03-30 05:52:35
2019-02-18 05:52:37|2019-03-30 05:52:37
2019-02-18 05:52:39|2019-03-30 05:52:39
2019-02-18 05:52:41|2019-03-30 05:52:41
2019-02-18 05:52:43|2019-03-30 05:52:43
2019-02-18 05:52:45|2019-03-30 05:52:45

UPDATE文で更新

UPDATE 位置情報 SET 日時 = REPLACE(日時, "02-18", "03-30") WHERE 日時 LIKE "%02-18%";

できた!

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
0
Help us understand the problem. What are the problem?