1

我有一个棘手的 SQL 问题要问你们。我正在使用 drupal 的 Webform 模块。

该模块如何工作:
- 网络表单上的每个项目都是“webform_submitted_data”表中的新记录,
- sid = 注册用户
- cid = webform 字段

表结构:

NID | 西德 | 客户识别码 | 否 | 数据

1 --- 168 --- 1 --- 0 --- XXX

1 --- 168 --- 2 --- 0 --- YYY

问题: - CID 64 应该使用相同 SID 的 CID 56 的值进行更新。

4

2 回答 2

4

我认为应该是这样的:

UPDATE webform_submitted_data as a, webform_submitted_data as b 
SET a.data = b.data WHERE a.sid = b.sid AND a.cid = 64 AND b.cid = 56

基本上,您可以自行加入表(匹配 SID),然后在查询中拥有这两个字段,因此您可以一次简单地引用每个字段。

于 2011-11-03T15:17:35.793 回答
1

对于每个 SID 值,这会将 CID 56 的数据复制到 CID 64。它是 SQL Server 语法。

update  yt64
set     Data = yt56.Data
from    YourTable yt64
join    YourTable yt56
on      yt64.SID = yt56.SID
where   yt64.CID = 64
        and yt56.CID = 56
于 2011-11-03T15:15:24.027 回答