sql >> データベース >  >> RDS >> Mysql

SET変数ステートメントを使用したMysqliクエリ(つまり、複数のクエリ)

    2つの別々のクエリでそれを行います:

    $db->query('SET @rownum := 0');
    $sql = 'SELECT @rownum :[email protected] + 1 AS Rank, User_Id, COUNT(User_ID) AS Block_Count FROM Block_Owners'
    $stmt = $db->prepare($sql);
    $stmt->bind_param('ii', $world, $userId);
    $stmt->execute();
    

    ただし、実行するクエリは常に単一の行を返すことに注意してください(Rank = 1GROUP BYなしで集計関数を使用しているため 。




    1. 同じ列名の2つのテーブルを内部結合します

    2. 複数の行を単一の行の列に変換するmysql

    3. UNIONを使用して複数のテーブルから選択する

    4. SqlParameterはテーブル名を許可しません-SQLインジェクション攻撃のない他のオプション?