1

我的SQL不是很强大,所以你能帮忙吗?

我有一个包含 100 行的表,我需要将它们的 id 更改为随机值

现在是 1, 2,3 ,4 ,5 ,6 ,7 我想要 28, 30, 19, 1, 84 等。

我该怎么做?

ps 此数据库用于相册,照片的顺序取决于它们的 ID。我想更改 id 以便顺序变得不同。

4

2 回答 2

1

您将无法随机更改自动生成的 ID。您可以自己生成 ID,但需要检查以确保它尚未被使用。

一个更简单的选择是不按照片 ID 排序 - 你可以试试这个:

SELECT *
FROM photos
ORDER BY RAND()

这也会使照片每次都以不同的顺序出现(我不确定这是否是你想要实现的)。

于 2013-04-30T21:40:23.083 回答
0

您不应该更改他们的 ID。如果您希望它们随机出现,您应该只在 ORDER BY 子句中使用 RAND()。

这是一个 SQL Fiddle 示例: http ://sqlfiddle.com/#!2/be776/1

于 2013-04-30T21:44:09.033 回答