提问人:Imre Pocsai 提问时间:11/8/2023 最后编辑:Imre Pocsai 更新时间:11/9/2023 访问量:42
在SQLite中,仅将选定的值从一个表复制到另一个表中,并带有where子句
Copy only the selected values form one table to another one with where clause in SQLite
问:
我有一个包含重复行的表(表:electricity_meters)。还有另一个表(表:power_consumptions)告诉我要保留第一个表的哪一行。
尝试使用 CTE 删除 SQLite 中的重复行,但不起作用。
这是我正在尝试的,使用DB Browser for SQLite:
with CTE_table AS
(
select *, row_number() over (PARTITION by serial_number ORDER by consumed_value DESC) as row_num
from electricity_meters
left JOIN power_consumtions on electricity_meters.adressId=power_consumptions.adressId
)
delete from CTE_table
WHERE row_num > 1
结果:
Execution finished with errors.
Result: no such column: row_num
serial_number位于第一个表 (electricity_meters) 中,consumed_value位于第二个表 (power_consumtions) 中。
任何建议或帮助都会很棒。谢谢。
答:
0赞
Vector
11/9/2023
#1
我有一个带有 TABLE“TxData”的 sqlite 数据库,这两列 NxData 和 txSearchMonth 都是整数类型 尝试添加条件语句 WHERE row_num = your value
UPDATE TxData SET NxData = txSearchMonth
评论
0赞
Imre Pocsai
11/10/2023
我不完全理解这一点。:(
0赞
Vector
11/11/2023
@ImrePocsai 您正在使用多少张桌子?如果要删除的所有数据都在一列中,请将其移至另一列 您对新列中的数据执行的操作从您的问题中不清楚 那么,您要对要删除的数据执行什么操作 如果你只是想删除它,如果它是重复的,那么写一个带条件的 DELETE 语句
0赞
Imre Pocsai
11/13/2023
我想删除完整的行。所有行都是重复的,第二个表告诉需要哪一行。
评论