这不起作用:如何在MySQL插入语句中添加where子句?
INSERT INTO users (username, password) VALUES ("Jack","123") WHERE id='1';
任何想法如何通过ID缩小插入到特定行?
这不起作用:如何在MySQL插入语句中添加where子句?
INSERT INTO users (username, password) VALUES ("Jack","123") WHERE id='1';
任何想法如何通过ID缩小插入到特定行?
在INSERT语句中,你不会有现有的行做了哪里对吗?你插入一个新的行,你的意思是做一个更新的声明?
update users set username='JACK' and password='123' WHERE id='1';
“你不会有现有的行做一个地方?”完美的答案。 – 2013-08-16 20:10:49
我想在表格的其余部分做一个where子句。 E.g'insert ... where count(..)<10'。 – 2017-05-30 11:43:15
我认为您正在寻找UPDATE而不是插入?
UPDATE `users`
SET `username` = 'Jack', `password` = '123'
WHERE `id` = 1
试试这个:
Update users
Set username = 'Jack', password='123'
Where ID = '1'
或者如果你实际上是试图插入:
Insert Into users (id, username, password) VALUES ('1', 'Jack','123');
INSERT INTO users (id,username, password)
VALUES ('1','Jack','123')
ON DUPLICATE KEY UPDATE username='Jack',password='123'
如果id
域是唯一/包这只会工作(而不是复合PK虽然) 另外,如果没有价值1 id
被发现,这将插入和更新,否则与id
1纪录如果它确实存在。
简单地在INSERT语句中添加WHERE子句;
INSERT INTO table_name (column1,column2,column3)
SELECT column1, column2, column3 FROM table_name
WHERE column1 = 'some_value'
呃,你能否加入一些关于这里发生的事情的信息?为什么插入需要一个WHERE? – Martin 2015-09-22 17:53:27
谁在乎*为什么*?问题是*“如何在MySQL插入语句中添加where子句?”* – 2017-05-30 11:46:40
通常在MySQL脚本使用条件插入是:
insert into t1(col1,col2,col3,...)
select val1,val2,val3,...
from dual
where [conditional predicate];
您需要使用虚拟表双。
在这个例子中,只有第二个插入语句实际上将数据插入到表:
create table t1(col1 int);
insert into t1(col1) select 1 from dual where 1=0;
insert into t1(col1) select 2 from dual where 1=1;
select * from t1;
+------+
| col1 |
+------+
| 2 |
+------+
1 row in set (0.00 sec)
这应该是公认的答案。 +1 – 2017-05-30 11:45:29
UPDATE users SET username='&username', password='&password' where id='&id'
该查询会要求你输入用户名,密码和动态ID
此查询将要求您动态输入用户名,密码和ID – 2015-09-22 17:43:41
对于空行,我们如何插入值在哪里子句
试试这个
UPDATE table_name SET username="",password="" WHERE id =""
Downvoted。就目前而言,标题是错误的,或者被接受的答案。无论如何,谷歌带我到这里*插入*,但接受的答案是关于*更新*。 – 2017-05-30 11:45:03