Почему цикл While срабатывает 2 раза?

Рейтинг: 0Ответов: 1Опубликовано: 08.01.2023

введите сюда описание изображенияПочему при выводе цикл While в Java срабатывает 2 раза? Нужен в итоге одинарный вывод. В таблице по одному значению Джон - кепка красная, Джон - кепка синяя. Почему тут повторяет? При попытке break; - остается только "кепка красная" , при выводе println за фигурную скобку - "кепка синяя"...

 sql = "SELECT * FROM `orders`";
        Statement statement = getDbConnection().createStatement();
        ResultSet result = statement.executeQuery(sql);

        System.out.println("Все заказы\n");

        // Далее выводим их, плюс получаем соответствующие записи из других таблиц
        while(result.next()) {
            // Получаем имя пользователя
            sql = "SELECT `login` FROM `users` WHERE `id` = '1' LIMIT 1";
            PreparedStatement prUsers1 = getDbConnection().prepareStatement(sql);
            ResultSet resUsers1 = prUsers1.executeQuery();

            String user_id2 = null;
            while (resUsers1.next()) {
                user_id2 = resUsers1.getString("login");
            }


            sql = "SELECT `title` FROM `items` WHERE `category` = ? " ;
            PreparedStatement prTovar1 = getDbConnection().prepareStatement(sql);
            prTovar1.setString(1, "hats");
            ResultSet resTovar1 = prTovar1.executeQuery();

            String item_id2 = null;
            while (resTovar1.next()) {
                item_id2 = resTovar1.getString("title");
               System.out.println(user_id2 + " - " + item_id2);
                            }
        }

Ответы

Ответов пока нет.