我对SQL非常陌生,我遇到了一些麻烦。
我们假设我有一个名为数据的表格,其中包含两列class
和name
。
我想创建列math
(如果它不存在),并为其赋值John
。
我可以这样做:
INSERT INTO data VALUES ('math','John')
但如果我将John
更改为Steve
,我希望math
的值为"John","Steve"
。
但相反,它会创建另一个名为"math"
的行,其值为"Steve"
,如何将此插入插入同一列?
由于
答案 0 :(得分:0)
我强烈建议反对在表格中存储CSV名称列表。 CSV很难查询,更新和维护。实际上,你目前的方法没有任何错误:
class | name
math | John
math | Steve
可以轻松查询此格式的数据,因为它是关系型的。如果您需要添加,更新或删除与类关联的名称,则无需处理CSV即可成为一个记录事件。请注意,如果您确实需要CSV表示,您仍然可以使用SQLite的GROUP_CONCAT()函数来实现:
SELECT class, GROUP_CONCAT(name, ',') AS names
FROM yourTable
GROUP BY class
答案 1 :(得分:0)
不完全确定SQLite,但正常的命令通常是这样的:
ALTER TABLE table_name ADD column_name数据类型
然后插入