我有以下資料:
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
...
uj5u.com熱心網友回復:
您可以創建一個回傳串列并在陳述句的WHERE子句中使用的 CTE UPDATE:
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;
請參閱演示。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/434082.html
