- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要更多帮助。 OK,我有如下表格:
mysql> SELECT * FROM MODELOS;
+--------+----------+---------+
| ID_MOD | ID_MARCA | MODELO |
+--------+----------+---------+
| 1 | NULL | PICASSA |
| 2 | NULL | C4 |
| 3 | NULL | C3 |
| 4 | NULL | C2 |
| 5 | NULL | MONDEO |
| 6 | NULL | S-MAX |
| 7 | NULL | CIVIC |
| 8 | NULL | ACCORD |
| 9 | NULL | CLS |
| 10 | NULL | 900 |
| 11 | NULL | LEON |
| 12 | NULL | IBIZA |
| 13 | NULL | 307 |
| 14 | NULL | 308 |
| 15 | NULL | 407 |
| 16 | NULL | 408 |
| 17 | NULL | MEGANE |
| 18 | NULL | PASSAT |
| 19 | NULL | GOLF |
| 20 | NULL | TOUAREG |
+--------+----------+---------+
还有一个,FILE,看起来像这样:
+----------+------------+---------+-----------+--------+
| ID_MARCA | MARCA | MODELO | MATRICULA | PRECIO |
+----------+------------+---------+-----------+--------+
| 1 | CITROEN | PICASSA | CPG-2044 | 12000 |
| 1 | CITROEN | PICASSA | CPR-1762 | 12500 |
| 1 | CITROEN | C4 | FPP-1464 | 13500 |
| 1 | CITROEN | C4 | FDR-4563 | 13000 |
| 1 | CITROEN | C3 | BDF-8856 | 8000 |
| 1 | CITROEN | C3 | BPZ-7878 | 7500 |
| 1 | CITROEN | C2 | CDR-1515 | 5000 |
| 1 | CITROEN | C2 | BCC-3434 | 4500 |
| 2 | FORD | MONDEO | BTG-3267 | 8000 |
| 2 | FORD | MONDEO | BPP-6792 | 8200 |
| 2 | FORD | S-MAX | FDR-1564 | 20000 |
| 2 | FORD | S-MAX | FCE-9327 | 21000 |
| 3 | HONDA | CIVIC | FCC-7764 | 16000 |
| 3 | HONDA | CIVIC | FBC-4567 | 14000 |
| 3 | HONDA | ACCORD | FFC-6768 | 22000 |
| 3 | HONDA | ACCORD | FPB-2231 | 23000 |
| 4 | MERCEDES | CLS | FDR-2265 | 31000 |
| 5 | SAAB | 900 | FPG-1165 | 21000 |
| 6 | SEAT | LEON | DVB-1119 | 14500 |
| 6 | SEAT | LEON | DCR-5634 | 13500 |
| 6 | SEAT | IBIZA | DPR-3434 | 9500 |
| 6 | SEAT | IBIZA | DPP-8756 | 10000 |
| 7 | PEUGEOT | 307 | DGX-4598 | 5500 |
| 7 | PEUGEOT | 307 | DGG-2098 | 5000 |
| 7 | PEUGEOT | 308 | DPK-3859 | 5500 |
| 7 | PEUGEOT | 308 | DVK-4987 | 6000 |
| 7 | PEUGEOT | 407 | FFK-1513 | 7500 |
| 7 | PEUGEOT | 407 | FPP-3768 | 8000 |
| 7 | PEUGEOT | 408 | CPG-7879 | 10000 |
| 7 | PEUGEOT | 408 | CRC-9738 | 9500 |
| 8 | RENAULT | MEGANE | CQC-4298 | 11000 |
| 8 | RENAULT | MEGANE | FNZ-7688 | 6000 |
| 9 | VOLKSWAGEN | PASSAT | FNR-3987 | 16000 |
| 9 | VOLKSWAGEN | PASSAT | FQK-3987 | 18000 |
| 9 | VOLKSWAGEN | GOLF | FCJ-0909 | 22500 |
| 9 | VOLKSWAGEN | GOLF | FCK-3989 | 21000 |
| 9 | VOLKSWAGEN | TOUAREG | DGG-0937 | 42000 |
+----------+------------+---------+-----------+--------+
我想做的是更新表 MODELOS 中的 ID_MARCA 列,使 ID_MARCA 与列 MODELO 中的字段相对应。例如,在表 MODELOS 中我有一个字段 PICASSA,我需要列 ID_MARCA 中的相应字段的值为 1,因为它是 CITROEN 和 PICASSA 的 ID,如果您查看表 FILE 是 CITROEN。所以,我得到了这个更新声明:
UPDATE TABLE MODELOS
SET ID_MARCA = (SELECT ID_MARCA FROM FILE)
WHERE FILE.MARCA IN (SELECT MARCA FFROM MODELOS);
但是这个语句返回 SQL 语法错误。
最佳答案
我建议您不要使用子查询进行更新,如果出于任何原因,直到 5.7 的 MySQL 无法在子查询内进行优化。
来自文档:( https://dev.mysql.com/doc/refman/5.7/en/subquery-optimization.html )
Note
A limitation on UPDATE and DELETE statements that use a subquery to modify a single table is that the optimizer does not use semi-join or materialization subquery optimizations. As a workaround, try rewriting them as multiple-table UPDATE and DELETE statements that use a join rather than a subquery.
我会使用联接:
UPDATE TABLE MODELOS m
JOIN FILE f ON m.MARCA = f.MARCA
SET m.ID_MARCA = f.ID_MARCA
关于mysql - 更新表。 SET语句语法错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39665990/
在此处回答的另一个问题中,我发现了以下 JavaScript代码: function _dom_trackActiveElement(evt) { if (evt && evt.target)
if (A == 0) OR (B == 0) 怎么说? 最佳答案 只是为了讽刺: if (A === 0 || B === 0) 关于语法,我们在Stack Overflow上找到一个类似的问题:
var ret = [] ,xresult = document.evaluate(exp, rootEl, null, X
我一直在寻找一些类似于下例的 JavaScript。有人可以解释一下吗,因为我以前从未见过这样编写的 JavaScript。 “SomethingHere”和冒号代表什么?我习惯于看到函数 myFun
这是我的程序: delimiter // drop procedure if exists migContactToActor; create procedure migContactToActor(
我遇到了一个问题。我一直在使用 gcc 编译/汇编我的 C 代码一段时间,并且习惯了阅读 Intel 汇编语法。我在生成程序集文件时使用了 -masm=intel 标志。 但是最近因为公司迁移,拿到了
自上而下和自下而上语法有什么区别?举个例子就太好了。 最佳答案 首先,语法本身不是自上而下或自下而上的,解析器是(尽管有些语法可以被其中一个解析,但不能被另一个解析)。 从实践的角度来看,主要区别在于
我知道这是草率的代码,但它是: display dialog ("Start Screensaver. Please type: matrix, coffee, waffles, star, wate
这个问题已经有答案了: Giving name to a loop (6 个回答) 已关闭 8 年前。 我见过这个字符在 C# 中使用,就像 Java 中的扩展一样,但最近我在代码中发现了这个 loo
我正在尝试编写一个函数来检查字符串是否为回文,但我认为在使用字符串指针时存在一些错误。这段代码有什么问题? #include #include #define MAX 1000 int IsPalin
所以在this question我询问了一些 Javascript 是如何被压缩的。问题已得到解答,但以下片段让我非常困惑,以至于我不得不问另一个问题。在这里: for (Y = 0; $ = 'zx
假设我有一个接受这些参数的函数。 int create(Ptr * p,void * (*insert)(void *, void *)) { //return something later } 结
这个问题已经有答案了: Bitwise '&' operator (6 个回答) 已关闭 5 年前。 我在代码中找到了这个,但我从未遇到过像 & 这样的事情,仅 && if ((code & 1) =
我在处理继承类及其中的构造函数和方法的语法时遇到了问题。 我想实现一个类日期和一个子类 date_ISO,它们将按特定顺序设置给定的日、月、年,并通过一种方法将其写入字符串。我觉得我的基类日期工作正常
我正在尝试通过存储过程填充表,如下所示: SET @resultsCount = (SELECT COUNT(*) FROM tableA); SET @i = 0; WHILE @i THEN
谁能解释一下下面代码中的“<<”? mysql test<
刚刚开始学习 MySQL,这是一个菜鸟问题,也是我在 StackOverflow 上的第一个问题。 假设我有 12 个订单状态,我想从其中的 5 个中选择总计。我会使用: SELECT SUM(tot
我的编程背景是在学校学过一点Java。由于某些原因,JavaScript 语法往往让我感到困惑。下面的 JavaScript 代码是一种我不知道如何构成的语法模式: foo.ready = funct
我正在阅读 javascript 源代码,并且我以前没有编写过 javascript。我对它的一些语法感到困惑。 $(function () { window.onload=function
我什至不知道如何命名我想要的东西。那么让我举个例子来解释一下。 虽然火狐使用textContent,但其他浏览器支持innerText属性。顺便说一句,如果我使用了错误的术语,请纠正我。无论如何,到目
我是一名优秀的程序员,十分优秀!