Projection

Hibernate ORM - A Quick Start Guide Hibernate Query Language (HQL)
2 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$49.99
List Price:  $69.99
You save:  $20
€47.92
List Price:  €67.09
You save:  €19.17
£39.76
List Price:  £55.67
You save:  £15.90
CA$71.86
List Price:  CA$100.61
You save:  CA$28.75
A$79.95
List Price:  A$111.94
You save:  A$31.98
S$67.76
List Price:  S$94.87
You save:  S$27.11
HK$388.87
List Price:  HK$544.46
You save:  HK$155.58
CHF 44.66
List Price:  CHF 62.54
You save:  CHF 17.87
NOK kr565.88
List Price:  NOK kr792.28
You save:  NOK kr226.40
DKK kr357.50
List Price:  DKK kr500.54
You save:  DKK kr143.03
NZ$88.36
List Price:  NZ$123.72
You save:  NZ$35.35
د.إ183.61
List Price:  د.إ257.07
You save:  د.إ73.46
৳5,972.07
List Price:  ৳8,361.37
You save:  ৳2,389.30
₹4,246.46
List Price:  ₹5,945.38
You save:  ₹1,698.92
RM225.35
List Price:  RM315.51
You save:  RM90.16
₦77,461.50
List Price:  ₦108,452.30
You save:  ₦30,990.80
₨13,910.80
List Price:  ₨19,476.23
You save:  ₨5,565.43
฿1,709.72
List Price:  ฿2,393.75
You save:  ฿684.02
₺1,759.33
List Price:  ₺2,463.20
You save:  ₺703.87
B$304.23
List Price:  B$425.95
You save:  B$121.72
R915.31
List Price:  R1,281.50
You save:  R366.19
Лв93.65
List Price:  Лв131.12
You save:  Лв37.46
₩72,306.53
List Price:  ₩101,234.93
You save:  ₩28,928.40
₪182.68
List Price:  ₪255.76
You save:  ₪73.08
₱2,941.16
List Price:  ₱4,117.86
You save:  ₱1,176.70
¥7,821.18
List Price:  ¥10,950.28
You save:  ¥3,129.10
MX$1,003.69
List Price:  MX$1,405.25
You save:  MX$401.55
QR182.18
List Price:  QR255.07
You save:  QR72.89
P690.74
List Price:  P967.09
You save:  P276.35
KSh6,461.20
List Price:  KSh9,046.20
You save:  KSh2,585
E£2,543.65
List Price:  E£3,561.31
You save:  E£1,017.66
ብር6,381.64
List Price:  ብር8,934.81
You save:  ብር2,553.16
Kz45,890.82
List Price:  Kz64,250.82
You save:  Kz18,360
CLP$49,447.60
List Price:  CLP$69,230.60
You save:  CLP$19,783
CN¥364.74
List Price:  CN¥510.67
You save:  CN¥145.92
RD$3,043.26
List Price:  RD$4,260.81
You save:  RD$1,217.54
DA6,741.95
List Price:  DA9,439.27
You save:  DA2,697.32
FJ$115.80
List Price:  FJ$162.13
You save:  FJ$46.33
Q385.07
List Price:  Q539.13
You save:  Q154.06
GY$10,455.79
List Price:  GY$14,638.94
You save:  GY$4,183.15
ISK kr6,955.10
List Price:  ISK kr9,737.70
You save:  ISK kr2,782.60
DH502.98
List Price:  DH704.21
You save:  DH201.23
L918.26
List Price:  L1,285.64
You save:  L367.37
ден2,949.73
List Price:  ден4,129.86
You save:  ден1,180.13
MOP$400.09
List Price:  MOP$560.15
You save:  MOP$160.06
N$920.09
List Price:  N$1,288.20
You save:  N$368.11
C$1,839.03
List Price:  C$2,574.79
You save:  C$735.75
रु6,798.06
List Price:  रु9,517.84
You save:  रु2,719.77
S/186.09
List Price:  S/260.55
You save:  S/74.45
K202.66
List Price:  K283.74
You save:  K81.08
SAR187.79
List Price:  SAR262.92
You save:  SAR75.13
ZK1,383.09
List Price:  ZK1,936.44
You save:  ZK553.34
L238.52
List Price:  L333.95
You save:  L95.43
Kč1,204.37
List Price:  Kč1,686.22
You save:  Kč481.84
Ft19,842.53
List Price:  Ft27,781.13
You save:  Ft7,938.60
SEK kr551.51
List Price:  SEK kr772.16
You save:  SEK kr220.65
ARS$51,075.09
List Price:  ARS$71,509.21
You save:  ARS$20,434.12
Bs345.34
List Price:  Bs483.51
You save:  Bs138.16
COP$217,942.60
List Price:  COP$305,137.08
You save:  COP$87,194.48
₡25,214.88
List Price:  ₡35,302.85
You save:  ₡10,087.97
L1,268.63
List Price:  L1,776.18
You save:  L507.55
₲389,688.96
List Price:  ₲545,595.73
You save:  ₲155,906.76
$U2,236.96
List Price:  $U3,131.93
You save:  $U894.96
zł204.31
List Price:  zł286.05
You save:  zł81.74
Already have an account? Log In

Transcript

So far whenever we are executing the query, we are getting that entire entity object. But sometimes it is desirable to retrieve only a couple of columns. For example, if I want the product name along with its category name, we can create a query for the same, which is called projection. To demonstrate the same, let's go and comment this out, and then write a new function called get product name with category names. Since I don't have this function, I press Command one or Ctrl one on Windows to auto generate that function, press tab, select the package level, and then press enter. Let's get it off the to do this time we're going to create a query a bit different than previous queries.

I'll say string HQ equals to select product name, come on category dot category name from product. As you can see, this is a property coming from directly the product class. But category name is a member of the category object, which is a member of the product here. Now we can see here query equals to session dot create query, we have to supply the SQL and the desired data type. All this time we gave product as a type or a category as a type here, so that we got a list of category or list of products. But this time, we are getting two strings instead of an entire product object.

Now these come as an array of two elements, so we can say here that it is an object or a class. So now the return value of session dot create query is a query object, which gives a list of object array element so I'm going to press your command one, press enter, you'll see that we got a query representing an object array. So in order to Get the data, we'll simply say query dot get result list, assign that to a variable called the list. But this time when I press Command one, you will see that it's a list of object array, where each array will have two elements in it, one product name, and the other one category name. Just to prove the point, let's loop that we say give me one object array called the data from the list. And then we're going to print the data of zero which is going to be the product name, plus something like this where data of one which is the category name going to be printed.

I save this around the same. This time there is no product object created, but we still be able to get the product names along with the category names

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.