在十进制SQL中给出id

时间:2016-07-14 06:03:40

标签: mysql sql

我有一个表名content_details,并希望以十进制格式打印id:

id     contents
1.1    vegetarian
1.2    non-vegetarian

我已将此查询用于

ALTER TABLE content_details
ADD COLUMN id decimal(4,2)

然后用它来保存列

中的数据
ALTER TABLE content_details
ADD id = 1.1
WHERE contents_details= 'vegetarian'

但是得到错误:

  

#1064 - 您的SQL语法出错;查看与您的MySQL服务器版本相对应的手册,以便在' = 1.1 WHERE contents_details ='素食''在第2行

1 个答案:

答案 0 :(得分:0)

您必须执行的操作有两个:

第一个是DDL操作,所以你可以添加ID字段(我想你的桌子出生时你没有它。)

所以你可以写如下:

ALTER TABLE content_details
ADD id decimal(4,2)

所以第二个操作是关于填充字段的DML脚本,如下所示:

UPDATE content_details
SET id = 1 + 
COALESCE(SELECT COUNT(*) 
FROM content_details c2
WHERE c2.contents > content_details.contents),0) * 0.1