如何将列表添加到 SQLite 的数据库浏览器

发布于 2025-01-10 09:07:01 字数 900 浏览 0 评论 0原文

我有以下数据:

vocab   phonetictranscription_bre   phonetictranscription_ame
little           ˈlɪtl                       ˈlɪtəl
settle           ˈsɛtl                       ˈsɛtəl
...

如果该单词在下面的列表中,我想用“d”符号更改phonetictranscription_ame中的每个“t”符号

['little', 'better', 'pretty', 'matter', 'letter', 'committee', 'pattern', 'battle', 'attitude', 'settle', 'bottom', ...]

所以我认为可以用for循环来完成,例如:

for element in list:
     UPDATE table_name
     SET phonetic = REPLACE (phonetic, 't', 'd')
     WHERE vocab = element

可以工作,但我不能找不到有关在 SQLite DB 浏览器上创建列表的任何信息。我在网上也找不到任何东西。

预期结果:

vocab   phonetictranscription_bre   phonetictranscription_ame
little           ˈlɪtl                       ˈlɪdəl
settle           ˈsɛtl                       ˈsɛdəl
...

I have data that follows:

vocab   phonetictranscription_bre   phonetictranscription_ame
little           ˈlɪtl                       ˈlɪtəl
settle           ˈsɛtl                       ˈsɛtəl
...

If the word is in the list below, I want to change every 't' symbol in phonetictranscription_ame with the 'd' symbol

['little', 'better', 'pretty', 'matter', 'letter', 'committee', 'pattern', 'battle', 'attitude', 'settle', 'bottom', ...]

So I thought it could be done with a for loop like:

for element in list:
     UPDATE table_name
     SET phonetic = REPLACE (phonetic, 't', 'd')
     WHERE vocab = element

would work but I couldn't find any information regarding creating a list on SQLite DB browser. I couldn't find anything online either.

Expected outcome:

vocab   phonetictranscription_bre   phonetictranscription_ame
little           ˈlɪtl                       ˈlɪdəl
settle           ˈsɛtl                       ˈsɛdəl
...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

倾听心声的旋律 2025-01-17 09:07:01

您可以创建一个返回列表的 CTE,并在 UPDATE 语句的 WHERE 子句中使用:

WITH cte(vocab) AS (VALUES
 ('little'), ('better'), ('pretty'), ('matter'), ('letter'), ('committee'), 
 ('pattern'), ('battle'), ('attitude'), ('settle'), ('bottom') 
)
UPDATE table_name AS t
SET phonetictranscription_ame = REPLACE(t.phonetictranscription_ame, 't', 'd')
WHERE t.vocab IN cte;

请参阅 演示

You can create a CTE that returns the list and use in the WHERE clause of the UPDATE statement:

WITH cte(vocab) AS (VALUES
 ('little'), ('better'), ('pretty'), ('matter'), ('letter'), ('committee'), 
 ('pattern'), ('battle'), ('attitude'), ('settle'), ('bottom') 
)
UPDATE table_name AS t
SET phonetictranscription_ame = REPLACE(t.phonetictranscription_ame, 't', 'd')
WHERE t.vocab IN cte;

See the demo.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文