使用where子句将单个值插入到列中

时间:2012-04-25 15:50:48

标签: mysql sql

我试图在两个条件下将'testing'插入我的MeetingNotes列,但对于我的生活,我无法让它工作。是否有可能做到这一点?我是sql和mysql的初学者?提前谢谢!

SELECT MeetingNotes
FROM Meeting
INSERT INTO MeetingNotes
VALUES ('testing')
WHERE MeetingProcessId = '1001' AND MeetingId = '25'

2 个答案:

答案 0 :(得分:13)

您想使用an UPDATE query,它会更改现有记录中的值。 An INSERT query严格添加新记录

UPDATE Meeting
SET MeetingNotes = 'testing'
WHERE MeetingProcessId = '1001' AND MeetingId = '25'

为了将来参考,我不确定为什么在您的示例中有一个SELECT语句:不需要插入或更新记录。将新记录插入Meeting表(仅显示三列)将如下所示:

INSERT INTO Meeting (MeetingId, MeetingProcessId, MeetingNotes)
VALUES ('25', '1001', 'Notes about this very exciting meeting...')

关于此的几点说明:

  • 由于INSERT语句向表中添加了一条全新的记录,因此无法应用列式约束,因此它们不支持WHERE子句
  • 如果MeetingId是数据库生成的自动递增记录ID,则应该/必须将其置于INSERT语句之外
  • 只有字符串(CHAR / VARCHAR)值出现在查询中时才应引用,数值不应该引用。因此,例如,如果MeetingId和MeetingProcessId是整数而不是字符串列,则应删除上述查询中251001周围的引号。

答案 1 :(得分:2)

你想要的可能是:

UPDATE Meeting SET MeetingNotes='testing' WHERE MeetingProcessID = '1001' AND MeetingId = '25';