获得系统前一天
DATE_SUB(CURDATE(), INTERVAL 1 DAY)
格式化时间
date_format(CollectTime,'%Y')>=date_format(?,'%Y')
isnull、ifnull和nullif函数
ifnull(expr1,expr2)假如expr1不为NULL,则IFNULL()的返回值为expr1; 否则其返回值为expr2。IFNULL()的返回值是数字或是字符串,具体情况取决于其所使用的语境。
isnull(expr) 如expr为null,那么isnull()的返回值为1,否则返回值为0。
nullif(expr1,expr2)如果expr1=expr2成立,那么返回值为NULL,否则返回值为expr1。
left join
符合条件的记录全显示,左表的记录显示
PreparedStatement 的问号插入值时会多出'',?不能用在order by后面
不返回默认值:
SELECT IFNULL(release_funds,10) release_funds from t_poverty_alleviation_funds
where DATE_FORMAT(release_date,"%Y")='2015'
AND release_obj_id =(SELECT id from t_people_info where name="总额")
发现根本就没查出值,ifnull是查出值,值是空才会赋个默认值