《學習》8常用函式

2022-07-15 01:33:09 字數 3379 閱讀 6781

-- 常用函式 字元編碼uft8漢字為3個位元組 gbk漢字兩個位元組 gbk占用空間小速度快 utf8相容性好

-- length 返回字元的位元組數

select length('asd王');

-- char_length 返回字元個數

select char_length('asf喊');

select * from student where char_length(sname)=2;

select * from student where sname like '__';

select rand();-- 返回隨機小數[0,1)

select round(rand()); -- 0或1

select round(rand()*3)+1;-- 1到4之間的隨機整數 rand()*3的範圍是0-3

select * from student limit 2 ;-- 限制顯示兩行

select * from student order by rand() limit 2;-- 隨機查詢兩條記錄

-- 檢視十天的會員註冊人數

-- menber 會員表 regdate 註冊日期

select count(*) from menber where regdate between date_add(now(),interval -10 day);

-- 檢視十天前的時間日期

select date_add(now(),interval -10 day),now();

-- 十天後的時間

select date_add(now(),interval 10 day),now();

select date_add(now(),interval -2 hour);-- 兩小時之前

select date_add(now(),interval -8 month) 八個月前;

-- datefiff 兩個日期差的天數

select datediff(curdate(),'1992-9-18');

-- 格式化日期函式 例:y只顯示16年 y顯示2023年

select date_format(now(),'%y年%m月%d日');

create table ss(

sid int,

sname varchar(30),

sscore tinyint unsigned,

sbirthday datetime

);delete from ss;

insert into ss values(1,'張三',80,'1992-9-18 9:50:22'),(2,'李四',50,'1996-4-18'),(1,'王五',90,'1988-6-22');

select * from ss;

select sname 姓名,date_format(sbirthday,'%y年%m月') 出生年月 from ss;

-- timestampdiff可算年月日時分秒 具體看date_add

select timestampdiff(hour,'2015-7-10 12:30:00',now()) 工作時間;-- 從那個時間點到現在是多少個小時

select timestampdiff(minute,'2015-7-10 12:30:00',now()) 工作時間; -- 總的分鐘數

select timestampdiff(month,'2015-7-10 12:30:00',now()) 工作時間;

----------------------------

select weekofyear(now());-- 當前是今年的第幾周

-- 日期時間 儲存過程可以使用int unsigned類

-- form_unixtime 將數字表達的日期格式化成標準yyyy-mm-dd h-i-s

select from_unixtime(1476555100,'%y-%m-%d %t');

select from_unixtime(unix_timestamp()),unix_timestamp();-- 日期對應的數字

select unix_timestamp();-- 將日期轉換成數字儲存

select inet_aton ('111.13.100.91');-- 將ip轉換成相應的數字 1863148635

--------------------------------------

-- 字串處理

-- 大小寫轉換

select upper('hello'),lower('hello');

-- 不區分大小寫admin

select * from admin where lower(sname)=lower('admin');

select left(sname,2)from ss;-- 取目標的左邊(右邊用right)前2個字元

select mid(sname,2,1)from ss;-- 從第二個字開始取乙個字元

update menber set password=right(tel,6) where mmid=1000;-- 將id為1000的會員的密碼設定成他手機號的後六位

select ifnull(null,'保密');

select ifnull('男','保密');

select ifnull('女','保密');

select ifnull(sgender,'保密')from student;

select * from ss;

update ss set sscore=20 where sid=2;

select sid,sname,sscore,if(sscore>=90,'優秀',if(sscore>=70,'良好',if(sscore>=60,'及格','補考'))) 等級 from ss;

-- 加密函式

-- md5 32位 sha1 40位 都是單項加密

select md5('admin'),sha1('admin'),password('aaa');

-- uuid 36位16進製制的全球唯一字串

select uuid(),length(uuid());-- 84da3ed7-e74c-11e5-8edb-089e0156af5a

select format(2,2);-- 2.00 指定兩位小數

-- 數字轉ip ip轉數字(最好整型無符號)

select inet_aton('192.168.1.1');-- 3232235777

select inet_ntoa('3232235777');-- 192.168.1.1

-- php+mysql 專案開發的時間

日期時間和ip位址採用資料庫的 int unsigned 型別儲存

reg datetime

reg int unsigned

Java8 常用函式式介面

本文主要參考 在此感謝 接收乙個引數t,沒有返回值 原始碼 functionalinte ce public inte ce consumer 示例 講述乙個學生在學習過程中,需要買學習用品。買什麼東西是具體的實現,我們在呼叫study 方法的時候再指定。test public void testc...

Java8常用的函式式介面

1 predicate 斷言型介面 傳入的字串是否以 sql 結尾 predicateisendwithsql s s.endswith sql 傳入的字串非 sql 結尾 predicatenotendwithsql isendwithsql.negate boolean test isendwi...

Python常用內建函式分8類總結

內建函式 python3直譯器中內建了69個常用函式,屬於底層的函式,它們到處可用。有些對大家來說比較熟悉,比如abs max sum 也有一些比較陌生,比如locals all compile getattr 今天按照類別扼要總結。1 型別相關 bool 布林型 int 整形 str 字元型 tu...