从另一个表中转换的值更新表

9udxz4iz  于 2021-07-29  发布在  Java
关注(0)|答案(1)|浏览(288)

我尝试在一个表中比较int值和转换的(varchar到int)值,在另一个表中找到一个值,然后通过phpmyadmin更新它。
注解表

  1. id: 1 title:Lorem postID: 15

元表

  1. ID:99 NewID: 123 Type: "older_id" Value:"15"

sql语句

  1. update t1
  2. set t1.postID = t2.NewID
  3. from comment t1
  4. inner join meta t2
  5. on t1.postID = CAST(t2.value AS INT)
  6. where t2.Type = "older_id";

我不确定我做错了什么,但我总是出错。

avkwfej4

avkwfej41#

如果您使用的是mysql(这是php的典型用法),那么正确的语法是:

  1. update comment c join
  2. meta m
  3. on c.postId = (p2.value + 0) -- this converts the value, although even this is not necessary
  4. set c.postID = m.NewID
  5. where m.Type = 'older_id';

根本没有 from mysql中的子句。

相关问题