语法
NOW()
使用(当前日期 - 用户生日日期)取年份的整数部分可以计算出用户的年龄。
获取当前日期,可以使用时间函数NOW()
SELECT NOW();
第一行代码使用SELECT字段和NOW()函数获取当前时间。
NOW()函数可以获取当前时间。
时间格式为:'YYYY-MM-DD hh:mm:ss'
TIMESTAMPDIFF()
时间差函数TIMESTAMPDIFF()函数计算年龄
SELECT name, TIMESTAMPDIFF(YEAR, birthday, NOW()) AS age
FROM account_2c;
TIMESTAMPDIFF()函数的作用是计算时间差。
第一行代码使用SELECT关键字选择姓名name字段,并使用TIMESTAMPDIFF()函数计算当前时间与生日birthday字段的时间差并取别名age。
第二行代码使用FROM关键字提取account_2c客户表中的信息
CONCAT()
拼接
SELECT CONCAT(province,city,district,detailed_addr) AS 详细地址,recipient,contact_number
FROM address
WHERE account_id = 1004000054;
第一行代码通过SELECT关键字选择查找recipient,contact_number字段。
并用CONCAT关键字拼接province,city,district,detailed_addr四个字段取别名为详细地址。
第二行代码通过FROM关键字选择address表。
第三行代码通过WHERE关键字设置查询条件为account_id = 1004000054
SUBSTR()
用SUBSTR()函数可以从指定的字符串中选取指定的字段。
SELECT COUNT(*)
FROM invoice
WHERE SUBSTR(express_number,1,2) = 'FT';
代码的作用
这段代码可以从invoice表中查找到运单前两个字母为FT的订单数量。
第一行代码使用COUNT函数计算总数量。
第二行代码使用FROM关键字从invoice表中查找。
第三行代码使用SUBSTR关键字提取express_number字段中从第1个开始的前2个字符,判定条件为前两个字符等于FT。
语法:substr(string,start,length)
string - 指定的要截取的字符串。
start - 必需,规定在字符串的何处开始。
length - 指定要截取的字符串长度。
总结
时间函数总结
NOW()函数和TIMESTAMPDIFF()函数都是时间函数,在SQL中可以用来处理时间。
除此之外,SQL中还有很多其他处理时间的函数。
计算年龄差也可以用多种不同的方法。你可以自行探索哦。
字符串函数总结
CONCAT()函数和SUBSTR()函数都是字符串函数,在SQL中用来处理字符串的。
除此之外,SQL中还有很多其他处理字符串的函数。
截取字符串中指定字符也有很多方法。你可以自行探索哦。