FieldRow

When you want to get one row of data from multiple tables

In Daobab you don't need @JoinColumn at all.
And surelly you don't need to hardcode any painful relations into entity.
Just anytime you need, point what related columns Daobab schould retrieve.

SQL: select count(*) from pizza Pizza where pizza.name in('CAPRICIOSA','PEPPERONI'); 
FieldRow row=Select.fieldRow(daoPizza.colName(),daoPizzaPrice.colPrice())
	.where(Where.AND()
		.and(daoPizza.relPizza(),pizza)
		.and(daoPizzaSize.relPizzaSize(),bigSize)
		.and(daoPizzaPrice.relPizza(),daoPizza.relPizza())
		.and(daoPizzaPrice.relPizzaSize(),daoPizzaSize.relPizzaSize())
	).result();

Next, having FieldRow, you need to unbox data.

You can do this either by point a column:

	String pizzaname=row.unboxField(daoPizza.colName());
	Double pizzaprice=row.unboxField(daoPizzaPrice.colPrice());

Or by point the column place in query:

	String pizzaname=row.unboxFieldNo(1);
	Double pizzaprice=row.unboxFieldNo(2);

Also, you can map result to anything you like:

NameAndPrice np=Select.fieldRow(daoPizza.colName(),daoPizzaPrice.colPrice())
	.where(Where.AND()
		.and(daoPizza.relPizza(),pizza)
		.and(daoPizzaSize.relPizzaSize(),bigSize)
		.and(daoPizzaPrice.relPizza(),daoPizza.relPizza())
		.and(daoPizzaPrice.relPizzaSize(),daoPizzaSize.relPizzaSize())
	).map(Mappter::toNameAndPrice);

or consume it:

Select.fieldRow(daoPizza.colName(),daoPizzaPrice.colPrice())
	.where(Where.AND()
		.and(daoPizza.relPizza(),pizza)
		.and(daoPizzaSize.relPizzaSize(),bigSize)
		.and(daoPizzaPrice.relPizza(),daoPizza.relPizza())
		.and(daoPizzaPrice.relPizzaSize(),daoPizzaSize.relPizzaSize())
	).consumeResult(DoSomething::withFieldRowNameSize);