【发布时间】:2014-10-10 07:21:45
【问题描述】:
我有一个MySQL数据库表subscribers如下图:
我只需要让subscriber_number 与subscriber_id 相同。
例如:如果subscriber_id 是261,subscriber_number 是262,那么我需要把subscriber_number 设为261,和subscriber id 一样。
你能帮我用 MySQL 查询来解决这个问题吗?
更新 1:
我希望从这里的专家那里获得 MySQL 查询。我尝试的是获取 id 和 number 都不同的行
SELECT subscriber_id,subscriber_number
FROM subscribers
WHERE subscriber_id <> subscriber_number
请运行下面的代码sn-p查看带有示例数据的表结构
<table>
<thead>
<tr>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">subscriber_id</td>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">subscriber_number</td>
</tr>
</thead>
<tbody>
<tr>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">260</td>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">260</td>
</tr>
<tr>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">261</td>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">262</td>
</tr>
<tr>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">262</td>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">264</td>
</tr>
<tr>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">263</td>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">272</td>
</tr>
<tr>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">264</td>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">274</td>
</tr>
<tr>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">266</td>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">277</td>
</tr>
<tr>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">268</td>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">282</td>
</tr>
<tr>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">269</td>
<td style="border-right:1px solid #000;border-bottom:1px solid #000;">269</td>
</tr>
</tbody>
</table>
【问题讨论】:
-
我不知道如何得到这个,我试图在更新之前获取subscriber_number 和subscriber_id 不同的行。从
subscribers中选择订阅者 ID、订阅者编号,其中订阅者 ID 订阅者编号 -
我没有看到任何包含mysql的代码,只有一个表。
-
那么你知道如何编写select语句并且你想学习如何编写关联的更新语句吗?这是您的要求吗?
-
@ThorstenKettner 是的,我只需要更新订户编号与订户 ID 不同的所有行。除了我还需要维护主键的顺序。例如,如果我的 scabscriber id 是 61,63,65,我也想将其设为 61,62,63 并使订阅者编号与订阅者 id 相同
-
我想知道你为什么要这样做。如果您希望它们始终具有相同的值,为什么会有两个字段?另外:为什么数字必须是连续的? ID 通常就是这样,一些你不关心的数字,你只需要加入表。 (您甚至可以决定在没有技术 ID 的情况下构建数据库,而使用表的自然键。)另一方面,订户编号是唯一标识订户的编号(我猜)。你已经有了这个。你会从他们连续获得什么?