sql запросы

lxtopxm

Выдающийся
Местный
Сообщения
379
Розыгрыши
0
Репутация
239
Реакции
45
Баллы
1 375
Помогите сделать правильно запрос.
Есть такой вот запрос.
Код:
    if ($query = $mysqli->prepare('SELECT `name`, `class` FROM `characters` WHERE `account`= ?'))

Но у меня account_character Имя персонажа(characterName) и Ид Аккаунта (accountId)
а инфа о классе в таблицы data_logs . ид аккаунта(account_id) и класс персонажа(additional_data).

Как сделать правильно запрос с выводом имя и класс персонажа ?

Полный php код

PHP:
    public static function GetCharactersList($user, $pass)
    {
        if (Auth::IsValidLogin($user, $pass))
        {
            global $config;

            $accountId = Auth::GetAccountId($user);

            $final_array = array();

            foreach ($config['mysqli']['realms'] as $realm)
            {
                $mysqli = mysqli_connect($realm['hostname'],
                                         $realm['user'],
                                         $realm['pass'],
                                         $realm['database'],
                                         $realm['port']);

                mysqli_set_charset($mysqli, "utf8");

                if ($query = $mysqli->prepare('SELECT `name`, `class` FROM `characters` WHERE `account`= ?'))
                {
                    $query->bind_param('i', $accountId);
                    $query->execute();
                    $query->bind_result($charName, $charClass);

                    $realmArray = array();
                    while ($query->fetch())
                    {
                        $row_array['realm']     = $realm['name'];
                        $row_array['name']      = $charName;
                        $row_array['class']     = $charClass;
                       
                        array_push($realmArray, $row_array);
                    }

                    if (!empty($realmArray))
                        array_push($final_array, $realmArray);

                    $query->close();
                }
            }
           
            if (!empty($final_array))
            {
                echo json_encode($final_array, JSON_PRETTY_PRINT);
            }
        }
    }
 

Но у меня account_character Имя персонажа(characterName) и Ид Аккаунта (accountId)
а инфа о классе в таблицы data_logs . ид аккаунта(account_id) и класс персонажа(additional_data).
пробуем так
SQL:
SELECT
    ac.characterName AS name,
    dl.additional_data AS class
FROM
    account_character AS ac
LEFT JOIN
    data_logs AS dl ON dl.account_id = ac.accountId
WHERE
    ac.accountId = ?
 
 
Назад
Сверху Снизу