您的位置:首页 > 编程语言 > PHP开发

YII2 SQL 基础查询

2015-10-28 16:13 239 查看
SQL 基础查询

一旦有了连接实例就可以通过[[yii\db\Command]]执行 SQL 查询。

SELECT 查询

查询返回多行:

$command = $connection->createCommand('SELECT * FROM post');

$posts = $command->queryAll();

返回单行:

$command = $connection->createCommand('SELECT * FROM post WHERE id=1');

$post = $command->queryOne();

查询多行单值:

$command = $connection->createCommand('SELECT title FROM post');

$titles = $command->queryColumn();

查询标量值/计算值:

$command = $connection->createCommand('SELECT COUNT(*) FROM post');

$postCount = $command->queryScalar();

UPDATE, INSERT, DELETE 更新、插入和删除等

如果执行 SQL 不返回任何数据可使用命令中的 execute 方法:

$command = $connection->createCommand('UPDATE post SET status=1 WHERE id=1');

$command->execute();

你可以使用insert,update,delete 方法,这些方法会根据参数生成合适的SQL并执行.

// INSERT

$connection->createCommand()->insert('user', [

    'name' => 'Sam',

    'age' => 30,

])->execute();

// INSERT 一次插入多行

$connection->createCommand()->batchInsert('user', ['name', 'age'], [

    ['Tom', 30],

    ['Jane', 20],

    ['Linda', 25],

])->execute();

// UPDATE

$connection->createCommand()->update('user', ['status' => 1], 'age > 30')->execute();

// DELETE

$connection->createCommand()->delete('user', 'status = 0')->execute();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: