Почему цикл While срабатывает 2 раза?
Почему при выводе цикл 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);
}
}
Источник: Stack Overflow на русском