常用的代碼
UPDATE `表名` SET `字段名`=ceiling(rand()*500000+500000) WHERE (條件);
update `表名` set click=click*0.01 where classid='2' and click>2000
我們經(jīng)常會遇到使用隨機的問題,下面就是一種解決隨機數(shù)的方法。
在構(gòu)造測試數(shù)據(jù)時,我們需要對測試表插入隨機數(shù)據(jù)。構(gòu)造測試數(shù)據(jù)的方法如下,僅以update為例說明
步驟1:隨機數(shù)的SQL函數(shù)為rand() ,而rand()生成的是0-1之間的小數(shù)。
步驟2:將rand()*10
將產(chǎn)生1-10之間的帶小數(shù)的數(shù)字,可以使用ceil進行轉(zhuǎn)換。
步驟3:使用cast做類型轉(zhuǎn)換
Cast的用法如下:
Cast(value as type)
二進制,同帶binary前綴的效果 : BINARY
字符型,可帶參數(shù) : CHAR()
日期 : DATE
時間: TIME
日期時間型 : DATETIME
浮點數(shù) : DECIMAL
整數(shù) : SIGNED
無符號整數(shù) : UNSIGNED
SELECT CAST(RAND()*10 AS signed) AS rand
步驟4:運行sql語句
UPDATE storm_effect_info s SET
s.fhtp = (SELECT CAST(RAND()*10 AS signed) AS rand)WHERE s.id = 13
新聞熱點
疑難解答
圖片精選