mysql 关于从列中删除数据的查询问题
mysql query question about removing data from columns
Select * from setup_module;
+------------------------------------------+----------------+--------------+
| module | schema_version | data_version |
+------------------------------------------+----------------+--------------+
| Aheadworks_AdvancedSearch | 1.0.1 | 1.0.1 |
| Amasty_Acart | 1.8.0 | 1.8.0 |
| Amasty_Base | 1.6.3 | 1.6.3 |
| Amasty_CronScheduleList | 1.0.0 | 1.0.0
这就是 table 的样子。
我只想删除右边两列的数据。假设我想删除右侧第一行 Aheadworks_AdvancedSearch 列。
对不起,我在 mysql 里很糟糕。
Delete schema_version from setup_module WHERE module = "Aheadworks_AdvancedSearch";
Delete data_version from setup_module WHERE module = "Aheadworks_AdvancedSearch";
这是正确的语法吗?我怎样才能合并?
正如 Strawberry 评论的那样,您似乎想要一个 update
语句而不是 delete
。语法为:
update setup_module
set schema_version = null, data_version = null
where module = 'Aheadworks_AdvancedSearch'
这会将 schema_version
和 data_version
列重置为 null
module
等于 'Aheadworks_AdvancedSearch'
的行。
另一方面,如果要删除整行,则:
delete from setup_module where module = 'Aheadworks_AdvancedSearch';
Select * from setup_module;
+------------------------------------------+----------------+--------------+
| module | schema_version | data_version |
+------------------------------------------+----------------+--------------+
| Aheadworks_AdvancedSearch | 1.0.1 | 1.0.1 |
| Amasty_Acart | 1.8.0 | 1.8.0 |
| Amasty_Base | 1.6.3 | 1.6.3 |
| Amasty_CronScheduleList | 1.0.0 | 1.0.0
这就是 table 的样子。 我只想删除右边两列的数据。假设我想删除右侧第一行 Aheadworks_AdvancedSearch 列。
对不起,我在 mysql 里很糟糕。
Delete schema_version from setup_module WHERE module = "Aheadworks_AdvancedSearch";
Delete data_version from setup_module WHERE module = "Aheadworks_AdvancedSearch";
这是正确的语法吗?我怎样才能合并?
正如 Strawberry 评论的那样,您似乎想要一个 update
语句而不是 delete
。语法为:
update setup_module
set schema_version = null, data_version = null
where module = 'Aheadworks_AdvancedSearch'
这会将 schema_version
和 data_version
列重置为 null
module
等于 'Aheadworks_AdvancedSearch'
的行。
另一方面,如果要删除整行,则:
delete from setup_module where module = 'Aheadworks_AdvancedSearch';