对于MySQL,在同一个表中不存在值的情况下,如何插入到表中?
此查询显示错误。我无法使FirstName列唯一。请给出一个与此不同的想法对于MySQL,在同一个表中不存在值的情况下,如何插入到表中?,mysql,Mysql,此查询显示错误。我无法使FirstName列唯一。请给出一个与此不同的想法 谢谢您可以在该表上添加一个唯一的索引,这也会对您起到同样的作用 insert into student (FirstName,AGE,CITYID) values('guna','26','1') select * from student WHERE FirstName!='guna'; 编辑: 如果无法使用唯一索引 我能想到的一个解决方案是使用复合语句- 修订和测试后: INSERT INTO student (
谢谢您可以在该表上添加一个唯一的索引,这也会对您起到同样的作用
insert into student (FirstName,AGE,CITYID) values('guna','26','1')
select * from student WHERE FirstName!='guna';
编辑:
如果无法使用唯一索引
我能想到的一个解决方案是使用复合语句-
修订和测试后:
INSERT INTO student ( ....)
WHERE FirstName NOT IN (SELECT FirstName FROM student)
在代码块中标记代码。。请你得到的错误到底是什么?可能重复的重复更接近这个问题:我想问题说我不能使FirstName列唯一?呃。。。。不是我没读,就是后来加上去了?无论如何。。如果这是所需要的,那么勒多菲尔就有了答案。也可以将此答案添加到?插入学生名字、年龄、城市ID值“guna”、“26”和“1”中,其中名字不在从学生选择名字中,此查询还显示错误,如果不存在,可能会更快?
INSERT INTO student ( ....)
WHERE FirstName NOT IN (SELECT FirstName FROM student)
INSERT INTO student
(FirstName, age, cityid)
SELECT
'guna','26','1'
FROM student -- any table name will do
WHERE 'guna' NOT IN
(
SELECT FirstName
FROM student
)
LIMIT 1 -- required because all rows will qualify if
-- WHERE clause is satisfied