sql语法记录

yii2显示sql原始语句

$query = UserModel::find()->where(['status'=>1]);

echo $query->createCommand()->getRawSql();

yii2 的between

$model = User::find()->andFilterWhere(['between', 'created_at', $starTime, $endTime]);

yii2 的updateAll 修改全部,多条件

Baodan::updateAll(['logistics_sn' => $post['Baodan']['logistics_sn']], ['and', ['in', 'id', json_decode($data)], ['status' => 1]]);

查询重复的字段值

select * from lhh_log group by order_id having count(order_id)>1

排除重复的字段,取唯一

select DISTINCT user_id from lhh_cn

yii2 写法

$model = Log::find()->where(['type' => 3, 'is_fanli' => 0, 'user_id' => '30509'])->select('user_id')->distinct('user_id')->all();

对sql查出的时间格式化

Select * From order Where DATE_FORMAT(createTime,'%m-%d') >= '05-01'

判断expression_1字段是否为空,为空则返回expression_2

select IFNULL(expression_1,expression_2) from bkt_summary

sql自定义排序

SELECT * FROM lhh_order where is_tuikuan <> 0 ORDER BY FIELD(`is_tuikuan`, 1, 3, -1)

yii2 写法

Order::find()->where(['<>', 'is_tuikuan', '0'])->orderBy(["FIELD(is_tuikuan, '1', '3', '-1')" => true]);

Order::find()->where(['<>', 'is_tuikuan', '0'])->orderBy([new Expression("FIELD(is_tuikuan, '1', '3', '-1')")]);

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值