如何直接从phpmyadmin列X更新

时间:2014-08-13 22:54:02

标签: mysql sql phpmyadmin

我的列 A B C D X 。应计算 X 并输入数据库。我想更新phpmyadmin中的 X 列。

select last.id, ( IF(last.A IN(prev.A, prev.B, prev.C, prev.D), 1, 0) + IF(last.B IN(prev.A, prev.B, prev.C, prev.D), 1, 0) + IF(last.C IN(prev.A, prev.B, prev.C, prev.D), 1, 0) + IF(last.D IN(prev.A, prev.B, prev.C, prev.D), 1, 0) ) as X FROM标签AS last LEFT JOIN标签AS prev ON上一页.id = .id-1

1 个答案:

答案 0 :(得分:1)

PHPmyAdmin与此无关:你想要的是一个SQL解决方案,使用任何媒介将它扔到数据库中。 PHPmyAdmin可能就是其中之一。

那就是说,你已经有了你的构建块。由于MySQL不允许更新表,在查询视图中自行加入,最简单的方法是通过临时表:

-- First step: Create X
CREATE TABLE temp_tab SELECT 
  -- your query here
;

--  second step: Propagate to your table
UPDATE tab 
INNER JOIN temp_tab ON tab.id=temp_tab.id
SET tab.X=temp_tab.X
;

-- third step: clean up
DROP TABLE temp_tab
;