Yii2: примеры запросов к базе данных
Выполняем запрос к БД:
1 шаг: метод find() - находит объект запроса;
2 шаг: настройка объекта запроса. Например используя метод-построитель запроса. Порядок написания данных методов не имеет значения;
3 шаг: получение данных запроса в виде объектов\массивов. Например метод - all() (аналог селекта со звёздочкой (SELECT * FROM ...))
$parts = Article_part::find()->all(); $parts = Article_part::find()->orderBy( ['id' => SORT_ASC] )->all(); $parts = Article_part::find()->orderBy( ['id' => SORT_DESC] )->all(); $parts = Article_part::find()->asArray()->where('id=1')->all(); $parts = Article_part::find()->asArray()->where(['title' => 'Софт'])->all(); $parts = Article_part::find()->asArray()->where(['like', 'keywords', 'php'])->all(); $parts = Article_part::find()->asArray()->where(['>=', 'id', '3'])->all(); $parts = Article_part::find()->asArray()->limit(3)->all(); $parts = Article_part::find()->asArray()->limit(1)->one(); $parts = Article_part::find()->asArray()->where(['>=', 'id', '3'])->count(); $parts = Article_part::findOne()->where(['>=', 'id', '3']); // только объект $parts = Article_part::findAll(); $parts = Article_part::findAll()->where(['>=', 'id', '3']); // только объект Способ с использованием SQL запроса $sql = "SELECT * FROM `article` WHERE keywords LIKE '%php%'"; $parts = Article::findBySql($sql)->all(); Подготовленный запрос $searchString = "%php%"; $sql = "SELECT * FROM `article_part` WHERE keywords LIKE :search"; $parts = Article_part::findBySql($sql, [':search' => $searchString])->all();