項目是基於框架Yii 2.0開發的。
今天梳理一些數據統計功能代碼的時候,想把當前運行的sql語句打印出來,然后放到navicat工具里面運行,並分析一下運行效率和調優方案,之前大部分時候都是寫增加、刪除、修改、查詢,這個打印sql語句的還真是用的很少,去官網查了一下資料,完美解決。
Yii 2.0提供2種數據操作方式,一種是數據模型【models】,一種是【\yii\db\Query()】,具體使用哪種,看個人喜好。
models模式打印sql語句舉例如下:
1 $query = User::find()->where(['id'=>[1,2,3,4])->select(['username']) 2 echo $query->createCommand()->getRawSql();
\yii\db\Query()模式打印sql語句舉例如下:
1 $query = (new \yii\db\Query())->select('id')->from('channel')->where('id = 1'); 2 echo $query->createCommand()->getRawSql();
