Mysql共通関数--数値関数


#      

--        number X      '#,###,###.##', 
--                D ,            。
SELECT FORMAT(25123.265,2); -- 25,123.27

--     
-- CEILING(X) CEIL(X)       X       。
SELECT CEILING(1.23); -- 2
SELECT CEILING(1.99); -- 2
SELECT CEILING(-1.23); -- -1
SELECT CEILING(-1.99); -- -1

SELECT CEIL(1.23); -- 2
SELECT CEIL(1.99); -- 2
SELECT CEIL(-1.23); -- -1
SELECT CEIL(-1.99); -- -1


--     
-- FLOOR(X)       X       。
SELECT FLOOR(1.23); -- 1
SELECT FLOOR(1.99); -- 1
SELECT FLOOR(-1.23); -- -2
SELECT FLOOR(-1.99); -- -2

--   
-- MOD(N,M) , N % M   N MOD M    N   M     。
SELECT MOD(235,10); --5

--    
SELECT PI(); -- 3.141593

--     
-- RAND() RAND(N) 
--           v ,    0  1    ( ,      0 ≤ v ≤ 1.0)。
--            N ,        ,        。 

SELECT RAND(); --    

SELECT RAND(2); --                 

SELECT RAND(3); --                 

SELECT FLOOR(7 + (RAND() * 6));


 SELECT * FROM ms_nick ORDER BY RAND();
 
 --        
 --   , WHERE   ,WHERE     , RAND()        。

 SELECT * FROM ms_nick  WHERE user_id >2
 ORDER BY RAND() ;

 SELECT *, RAND() AS r FROM ms_nick  WHERE user_id >2
 ORDER BY r DESC ;

 SELECT *, ROUND(RAND(),2)AS r FROM ms_nick  WHERE user_id >2
 ORDER BY r DESC ;
 
 --       
 -- ROUND(X) ROUND(X,D) 
 --     X,            。
 --           ,   X ,         D ,  D           。
 --      X       D  ,   D     。

 SELECT ROUND(-1.23); -- -1

 SELECT ROUND(-1.58); -- -2

 SELECT ROUND(1.58); --  2

 SELECT ROUND(1.298, 1); -- 1.3

 SELECT ROUND(1.298, 0); -- 1

 SELECT ROUND(23.298, -1); -- 20

 --          
 SELECT ROUND(2.5), ROUND(25E-1); -- 3   2
 
 --             
 

-- SIGN(X) 
--       -1、 0 1   ,      X     、   。 

 SELECT SIGN(-2); --  -1

 SELECT SIGN(0); --  0

 SELECT SIGN(2); -- 1

--       
-- TRUNCATE(X,D) 
--           D    X。 D     0,                  。
--    D    ,    (  ) X      D           .  
 SELECT TRUNCATE(1.233,1); -- 1.3

 SELECT TRUNCATE(1.9565,1); -- 1.9

 SELECT TRUNCATE(1.988,0); -- 1

 SELECT TRUNCATE(-1.998,1); -- -1.9

 SELECT TRUNCATE(1224,-2); -- 1200

 SELECT TRUNCATE(10.24*100,0); -- 1024