Я довольно нового в SQL, и я хочу, чтобы убедиться, что я "м diong все правильно, надеюсь, что вы можете посоветовать мнеSQL запросов - несколько строк для каждого объекта
Допустим, у меня есть объект А и. есть список объектов B. Таким образом, в базе данных у меня есть таблица элементов а и таблицу B и, в этой таблице есть столбец indicationg идентификатор . Например:
A table:
A id | color
---------------
1 | red
2 | yellow
3 | green
B table
B id | A id
---------------
10 | 1
11 | 1
12 | 2
13 | 3
14 | 2
15 | 1
Я хочу чтобы извлечь все A. Итак, если я использую соединение между A и B, я получу 3 ряда A-1 и буксировочные ряды A-2 и т. д. Я использую только jdbc (нет пружины или jpa), так что я должен взять объединенную таблицу и вручную построить A с помощью java? это нормально?
Если, например, я хочу получить только два А и заказать их по цвету. Будет ли «ограничиваться» тем, насколько это возможно? можете ли вы предложить запрос, который делает это?
EDIT:
То, что я хочу сделать, это получить X A-х (скажем, X = 2) упорядочены по цвету. Поэтому я использую следующий запрос, чтобы объединять обе таблицы:
select *
from A
inner join B on A.Aid = B.Aid
order by A.color
Это создает следующую таблицу:
B id | A id | color
------------------------
13 | 3 | green
15 | 1 | red
10 | 1 | red
11 | 1 | red
12 | 2 | yellow
14 | 2 | yellow
Но я хочу только первые два, а это означает:
B id | A id | color
------------------------
13 | 3 | green
15 | 1 | red
10 | 1 | red
11 | 1 | red
Первый вопрос: как это сделать?
Второй вопрос: в таблице результатов одиночный Объект (с id = 1) представлен тремя строками, поскольку он имеет три B. В конце концов, я хочу построить список A и отправить его клиенту (в java, используя jdbc), поэтому правильный способ сделать это - перебрать таблицу результатов и построить объекты вручную? В идеальном мире я ожидал бы получить одну строку для каждого объекта A.
Надежда это объяснение clearier ...
Пожалуйста, покажите нам, какие вопросы вы рассматриваете. Кроме того, что вы спрашиваете? –
, пожалуйста, объясните результат в формате таблицы –
Покажите модельный формат вывода, который вы хотите. –