استفاده از کوئری select با استفاده از createCommand
برای این کار ابتدا باید به دیتابیس متصل شویم
use yii\db\Query; $connection = \Yii::$app->db;
-
queryAll
$model = $connection->createCommand('SELECT * FROM tbl_user'); $users = $model->queryAll();
به این صورت که آرایه ای تو در تو از دیتا های موجود را بر می گرداند.
Array ( [۰] => Array ( [id] => 1 [value] => 89.3 [publish_date] => 2015-08-17 00:00:00 [picture] => default.jpg [user_id] => 1 ) [۱] => Array ( [id] => 2 [value] => 88.4 [publish_date] => 2015-09-03 00:00:00 [picture] => default.jpg [user_id] => 1 ) [۲] => Array ( [id] => 3 [value] => 87.7 [publish_date] => 2015-09-11 00:00:00 [picture] => default.jpg [user_id] => 1 ) [۳] => Array ( [id] => 4 [value] => 88.4 [publish_date] => 2015-09-20 00:00:00 [picture] => default.jpg [user_id] => 1 ) [۴] => Array ( [id] => 5 [value] => 87.3 [publish_date] => 2015-09-25 00:00:00 [picture] => default.jpg [user_id] => 1 ) [۵] => Array ( [id] => 6 [value] => 87.9 [publish_date] => 2015-10-01 00:00:00 [picture] => default.jpg [user_id] => 1 ) [۶] => Array ( [id] => 7 [value] => 87.5 [publish_date] => 2015-10-08 00:00:00 [picture] => default.jpg [user_id] => 1 ) [۷] => Array ( [id] => 8 [value] => 89.300 [publish_date] => 2015-10-15 00:00:00 [picture] => default.jpg [user_id] => 1 ) [۸] => Array ( [id] => 9 [value] => 86 [publish_date] => 2015-10-24 00:00:00 [picture] => default.jpg [user_id] => 1 ) [۹] => Array ( [id] => 10 [value] => 86.900 [publish_date] => 2015-10-30 00:00:00 [picture] => default.jpg [user_id] => 1 ) )
queryOne
$model = $connection->createCommand("SELECT * FROM tbl_user where userid=$id"); $users = $model->queryOne();
فقط یک رکورد بر می گرداند البته به صورت آرایه
Array ( [id] => 1 [value] => 89.3 [publish_date] => 2015-08-17 00:00:00 [picture] => default.jpg [user_id] => 1 )
-
queryColumn
$model = $connection->createCommand('SELECT value FROM weight'); $users = $model->queryColumn();
فقط ستون صدا زده شده را در آرایه نمایش می دهد
Array ( [۰] => ۸۹٫۳ [۱] => ۸۸٫۴ [۲] => ۸۷٫۷ [۳] => ۸۸٫۴ [۴] => ۸۷٫۳ [۵] => ۸۷٫۹ [۶] => ۸۷٫۵ [۷] => ۸۹٫۳۰۰ [۸] => ۸۶ [۹] => ۸۶٫۹۰۰ )
queryScalar
$model = $connection->createCommand('SELECT COUNT(*) FROM weight'); $weight = $model->queryScalar();
فقط عدد بر می گرداند .
برای sum , max نیز استفاده می شود