我有下表,其中的表translation
是空的,我正在尝试填充:
translation {
id
translated
language_id
template_id
}
language {
id
langname
langcode
}
template {
id
tplname
source
domain
total
}
要填充的源数据translation
是我从外部CSV文件填充的临时表:
tmp_table {
id
translated
langname
tplname
source
domain
}
我想做的是translation
用中的值填充tmp_table
。该translated
字段可以直接复制,但是我不太确定如何获取正确的内容language_id
(可以使用tmp_table.langname确定language.id)和template_id
(tmp_table.tplname,tmp_table.source,tmp_table.domain一起使用)确定template.id)。
这可能是一个琐碎的问题,但是我对SQL还是很陌生,因此不确定填充translation
表的最佳查询是什么。有任何想法吗?
可以简化为:
INSERT INTO translation (id, translated, language_id, template_id)
SELECT tmp.id, tmp.translated, l.id, t.id
FROM tmp_table tmp
JOIN language l USING (langname)
JOIN template t USING (tplname, source, domain)
ORDER BY tmp.id
我添加了一个ORDER BY
您严格不需要的子句,但是如果您以这种方式(或其他方式)插入集群数据,则某些查询可能会受益。
如果您想避免丢失在language
或中找不到匹配行的行template
,请使其 LEFT JOIN
代替JOIN
两个表(前提是language_id
和template_id
可以为)NULL
。
除了我已经在先决问题下列出的内容之外:如果INSERT很大并且在目标表中占很大的比例,那么
删除 目标表上的 所有索引 并随后重新创建它们可能会更快。从头开始创建索引 要 快得多,然后每行都将对其进行增量更新。
唯一索引还充当约束,因此您必须考虑是稍后执行规则还是将规则留在原地。
作为我作业的一部分,我们得到了一个我们不能更改的接口,以及一些用来开发我们方法的预定义测试。 界面如下: 我正在运行的特定测试: 以及我需要从测试中创建的方法: 从测试中我可以看出,在方法中,我需要创建并用注册映射中匹配的学生填充它,然后返回列表。 我创建了以下字段:- 我搞不懂的是,如何将注册地图中的数据传递到学生列表中,以使测试中的断言为真。
问题内容: 我目前正在使用Page_Load中的以下代码创建和读取DataTable 我想知道如何转换此代码,以便它从SQL查询中读取?我正在尝试下面的代码,但不确定如何连接它们,以便页面加载中的数据表使用下面的SQL命令填充。 我被困在: 我希望成为 问题答案: 您需要修改方法,并在其中添加“实验”代码,然后返回。
在dataframe中,如何有条件地将一列的值填充为列表中另一列的值? 这与这个SO问题非常相似,但当我申请时: 我得到一个错误: 我想中的
问题内容: 我想创建两个下拉列表,类别和项目。 如果我选择名为car的类别之一,则项目下拉列表应包含Honda,Volvo和Nissan。 如果我选择一个名为phone的类别,则项目下拉列表应具有此iPhone,Samsung,Nokia。 我怎样才能做到这一点?我知道我无法使用纯HTML做到这一点。 问题答案: 工作演示 (带有jquery) 更新 :使用eval()能够添加所需的任意数量的数组
我需要滚动表来获取使用selenium和java绑定以及chrome驱动程序动态填充的表内容。这是另一个滚动,而不是窗口滚动本身。我能找到的所有可用的解决方案都是针对窗口滚动的。我在这里需要的是滚动桌子。我需要滚动突出显示的那个 我收到以下错误消息 错误消息:没有这样的元素:找不到元素:{“method”:“XPath”,“Selector”:“//*[@class='antiscroll-scr