LibreOffice,带内连接的SQL命令

时间:2016-12-08 15:13:55

标签: sql libreoffice-base

我的问题是我只知道id_house = 10的房子所有者的新名称,所以这段代码应该有效。如果我尝试在LibreOffice Base中运行它,它表示意外结束INNER,需要SET语句[update“t_Owner” 内] 你能帮助我吗? 抱歉我的英文不好D:

update "t_Owner"
inner join "t_house"
    on t_house.id_ownerr = t_Owner.id_ownerr
set "name"='yes'
where "id_house" = '10'

t_Owner列:id_ownerr,姓名,姓氏,地址
t_house列:id_house,id_district,id_ownerr

2 个答案:

答案 0 :(得分:0)

 update "t_Owner"
     set "name"='yes' where "id_ownerr" 
          IN ( SELECT "id_ownerr" FROM "t_house" where "id_house" = '10' )

答案 1 :(得分:0)

在LO中使用默认的嵌入式数据库HSQLDB 1.8时,查询(即使用连接的东西)并不总是可更新性。实际上它们几乎总是不可更新的。

要自己测试一下,请尝试使用您的联接和所需字段创建查询,并查看它是否可更新。打赌不是。

您可以转到使用2.3(通过拆分数据库设置工具),或者执行我在MariaDB中运行并使用连接器的操作。