0

我正在尝试使用另一个表中的 COUNT 结果更新表中的列。这是代码:(它正在工作)

UPDATE software2
SET totalsoft = (
   SELECT COUNT(*)
   FROM links
   WHERE sftwr = software2.softwarename)

但是当我尝试使用 LIKE 实例而不是 = (在最后一行)时,我没有得到任何结果......这是代码:

UPDATE software2
SET totalsoft = (
   SELECT COUNT(*)
   FROM links
   WHERE sftwr LIKE '%software2.softwarename%')

出现次数为 0。有什么帮助吗?

4

1 回答 1

0
UPDATE software2 
SET totalsoft = ( SELECT COUNT(*) 
                  FROM links 
                  WHERE sftwr LIKE concat('%', software2.softwarename, '%')
                )

如果您将列名放在引号中,那么它将被视为字符串。然后不会使用列内容,而是使用静态字符串'software2.softwarename'

于 2013-08-09T20:31:55.277 回答