我试图通过使用像这样的语句更新表中约20,000条记录,但是,我收到消息说0 row(s) affected
,所以它没有工作。SQL UPDATE WITH LIKE
UPDATE nc_files SET title ="Worklog details" WHERE "log_name" LIKE "%PC01%"
的log_name
领域拥有所有混合文件扩展名和情况,e.g文件名。
PC01.TXT | Worklog details
PC02.txt | Project Summary
PC03.DOC| Worklog details
PC04.doc| Project Summary
我之所以需要使用LIKE
的是,更新后的文件只有文件名不带扩展名,例如
PC01 | Worklog details
PC02 | Project Summary
如何使用LIKE
更新记录?
您是否尝试选择行? SELECT * FROM nc_files WHERE log_name LIKE“%PC01%” – hgulyan
首先,尝试使用相同的WHERE子句执行select语句,这将证明where子句是否匹配目标表上的任何行。你确定案件是否匹配?是以小写形式保存的数据,而where子句使用的是大写? – Hector
您的问题已回答。作为一个额外的建议,如果你更新的文件包含没有扩展名的文件名,我建议改变你的LIKE子句,如下所示:WHERE log_name LIKE“PC01%”'。这将确保使用索引(如果有的话),使查询更快。 – Diego