我做了第一个,想检查我是否做对了?我也不知道如何做 2 号 Ruby ORM 考虑以下两个在“客户”和“订单”表上的活动记录定义。orders 表有一个外键“cust_key”,它引用了“customers”的主键,也称为“cust_key”。
Table:
customers-
cust_key
address
orders-
order key
cust_key
order_priority
total_price
1 class Customer < ActiveRecord::Base
2 set_table_name "customers"
3 set_primary_key "cust_key"
4 has_many :orders, :foreign_key => "cust_key”
5 End
1 class Order < ActiveRecord::Base
2 set_table_name "orders"
3 belongs_to :customer, :foreign_key => "cust_key"
4 set_primary_key "order_key”
5 end
Consider the following piece of Ruby-on-Rails code.
1 <table>
2 <% Customers.all.each.do |c| %>
3 <tr>
4 <td><%= c.address %></td>
5 <td><%= c.orders.count() %></td>
6 </tr>
7 <% end %>
8 </table>
问题:
- 提供执行这段 Ruby-on-Rails 所产生的 SQL 查询。总共将执行多少个 SQL 查询?
2 查询
SELECT address FROM customers
SELECT COUNT(*) FROM orders where orders.cust_key= customers.cust_key;
- 编写一个 jsp 片段,它只发出一个 SQL 查询并创建与上面的 Ruby-on-Rails 片段相同的 html。