1. 程式人生 > >Mysql取唯一值(類似隨機數);不使用迴圈在Mysql做更新操作

Mysql取唯一值(類似隨機數);不使用迴圈在Mysql做更新操作

1.    Mysql取唯一值(類似隨機數)

# 這裡生成的ebook_line_no 為永遠不重複值
SELECT (substr(UNIX_TIMESTAMP(now()), 6) + 10000) as ebook_line_no FROM dual;

2.    不使用迴圈在Mysql做更新操作。

        下面的作用就是把ebook_detail_receive表的所有ebook_line_no進行重新排序

# 首先所有ebook line 乘以-1取反,然後再從1開始累加更新(注意第二個sql的第一個值是從1開始)
UPDATE ebook_detail_receive
SET ebook_line_no 
= ebook_line_no * -1 WHERE ebook_no = new.ebook_no; SET @num = 0; UPDATE ebook_detail_receive SET ebook_line_no = @num := @num + 1 WHERE ebook_no = new.ebook_no;

3. 真實的隨機數

SELECT FLOOR(RAND() * 99999)
FROM dual;