百度的乙個資料庫面試題

2021-08-25 20:15:14 字數 773 閱讀 5683

4.       有兩張關聯的表a、b

a:  id   acount  pay_id           b:   pay_id  b_acount

1     100      1                               1        0

2     200      2                               2        0

3     200      1                      

要求,更新表b,使得b_acount的值等於表a中對應的pay_id的所有acount之和。列印如下:

b:  pay_id     b_acount

1             300 

2             200

寫了兩種答案,不知道效率怎麼樣

第一種:

update

b,(select pay_id c_pay_id, sum(account) c_sum

from a

group by pay_id) c

set b.b_account = c.c_sum

where b.pay_id = c.c_pay_id

第二種:

update b

set b.b_account = (select sum(a.account) from a where a.pay_id = b.pay_id)

乙個百度的面試題目

題目 乙個陣列中有2個數只出現了一次,其他的數都出現了兩次,寫乙個演算法找出這兩個只出現一次的數 分析 該題目可以通過異或完成,先讓我舉乙個例子 4 0100 5 0101 1 0001 5 0101 4 0100 上面的例子說明4 5 5 4 同理4 5 4 5 int find first 1 ...

乙個百度的面試題目

題目 乙個陣列中有2個數只出現了一次,其他的數都出現了兩次,寫乙個演算法找出這兩個只出現一次的數 分析 該題目可以通過異或完成,先讓我舉乙個例子 4 0100 5 0101 1 0001 5 0101 4 0100 上面的例子說明4 5 5 4 同理4 5 4 5 int find first 1 ...

百度面試題的乙個完整思路

為分析使用者行為,系統常需儲存使用者的一些query,但因query非常多,故系統不能全存,設系統每天只存m個query,現設計乙個演算法,對使用者請求的query進行隨機選擇m個,請給乙個方案,使得每個query被抽中的概率相等,並分析之,注意 不到最後一刻,並不知使用者的總請求量。做法 1 如果...