Drupal 8 合并查询与 addexpression?
Drupal 8 merge query with addexpression?
我正在尝试运行这样的查询
INSERT INTO user__field_ip_address ('bundle', 'deleted', 'entity_id', 'revision_id', 'langcode', 'delta'. 'field_ip_address_ipv6', 'field_ip_address_ip_from', 'field_ip_address_ip_to')
VALUES ($bundle, $deleted, $entity_id, $revision_id, $langcode, $delta. $field_ip_address_ipv6, UNHEX($field_ip_address_ip_from), UNHEX($field_ip_address_ip_to))
ON DUPLICATE KEY
UPDATE 'bundle' = $bundle,
'field_ip_address_ipv6' = $field_ip_address_ipv6,
'field_ip_address_ip_from' = UNHEX($field_ip_address_ip_from),
'field_ip_address_ip_to' = UNHEX($field_ip_address_ip_to);
我能看到的唯一方法是通过 Drupal 8 中的合并查询,但我不知道如何让 mysql 函数 UNHEX() 与它一起工作,有什么想法吗?
我发现无法完全按照我的要求进行操作,但我可以 运行 多次查询以获得相同的查询。
- 运行 select 查询以查看记录是否存在。
- 如果确实存在,运行更新
- 如果不存在,运行一个插入
运行通过这种分离,我可以使用 addExpression。
我正在尝试运行这样的查询
INSERT INTO user__field_ip_address ('bundle', 'deleted', 'entity_id', 'revision_id', 'langcode', 'delta'. 'field_ip_address_ipv6', 'field_ip_address_ip_from', 'field_ip_address_ip_to')
VALUES ($bundle, $deleted, $entity_id, $revision_id, $langcode, $delta. $field_ip_address_ipv6, UNHEX($field_ip_address_ip_from), UNHEX($field_ip_address_ip_to))
ON DUPLICATE KEY
UPDATE 'bundle' = $bundle,
'field_ip_address_ipv6' = $field_ip_address_ipv6,
'field_ip_address_ip_from' = UNHEX($field_ip_address_ip_from),
'field_ip_address_ip_to' = UNHEX($field_ip_address_ip_to);
我能看到的唯一方法是通过 Drupal 8 中的合并查询,但我不知道如何让 mysql 函数 UNHEX() 与它一起工作,有什么想法吗?
我发现无法完全按照我的要求进行操作,但我可以 运行 多次查询以获得相同的查询。
- 运行 select 查询以查看记录是否存在。
- 如果确实存在,运行更新
- 如果不存在,运行一个插入
运行通过这种分离,我可以使用 addExpression。