鍍金池/ 問答/ 數(shù)據(jù)庫問答
不討囍 回答

不知道你具體使用的是什么數(shù)據(jù)庫,我了解的mysql

mysql 5.6 以前的版本添加索引會阻塞讀寫,影響業(yè)務(wù)。mysql 5.6以后的版本添加索引具有新特性在線DDL,影響較小,只有開始和結(jié)束階段,其他時間不阻塞讀寫。
最好的方法是使用在線ddl工具 pt-osc ,但是一些限制,比如必須有主鍵,不能有觸發(fā)器等...

愛是癌 回答

webpack.dll.config.js中設(shè)置resolve.modules,指定模塊掃描目錄

吃藕丑 回答

數(shù)據(jù)提取出來后,這就是純統(tǒng)計算法問題了,跟是否前后端無關(guān),當(dāng)然實現(xiàn)起來也是比較簡單

const list = [
  {"id": 1, "name": "one", "tags": ["a", "c", "e"]},
  {"id": 2, "name": "two", "tags": ["e"]},
  {"id": 3, "name": "three", "tags": ["d", "e"]},
  {"id": 4, "name": "four", "tags": ["g", "c", "e", "h"]},
  {"id": 5, "name": "five", "tags": ["a", "c", "d"]}
];
const result = {
  length: 0 //不同的標(biāo)簽類型個數(shù)
};
list.forEach(item => {
  item.tags.forEach(tag => {
    if (!result[tag]) {
      result[tag] = {
        name: tag,  //標(biāo)簽名
        list: []    //包含含有此標(biāo)簽的id 數(shù)組length就是此標(biāo)簽下的條目數(shù)
      };
      result.length += 1;
    }
    result[tag].list.push(item.id);
  })
});
console.log(result)
抱緊我 回答

大概說一下,不要通過id取模進行分表,而是根據(jù)特定查詢字段來分表。

比如,你需要查詢某個『日期』的數(shù)據(jù),那么可以根據(jù)『月份』來分表,你知道日期之后,自然能算出來月份是多少,自然就知道查詢那張表;
再比如,你需要查詢某個『人名』的數(shù)據(jù),那么可以根據(jù)人名算出一個hash值,按照這個hash值取前1、2位來分表,你要查詢某個人的數(shù)據(jù),就能提前算出人名hash值,就知道這個人的數(shù)據(jù)存在哪張表里了。

希望能幫助到你。

裸橙 回答

我看你在控制臺中有兩個HTMLCollection對象,第一次有兩個元素,到了第二次就是空的,是否是在forEach循環(huán)中你有對兩個div做操作,導(dǎo)致他們從頁面節(jié)點中消失?

扯不斷 回答

檢查防火墻設(shè)置。

拮據(jù) 回答

如果線上的mongo是復(fù)制集的。可以采用,先升級從的版本。 再把主切換到剛剛的從。 再把其他復(fù)制集的升級到主節(jié)點。

你的瞳 回答

SELECT b.rank,c.score FROM (
SELECT count(*)+1 as 'rank' FROM (
SELECT id,u.score FROM 學(xué)生表 i LEFT JOIN (
SELECT id,SUM(score)as score FROM 成績表 GROUP BY id
)u ON u.id=i.id ORDER BY u.score DESC
) a WHERE a.score>(SELECT sum(score) FROM 成績表 WHERE id=1)
) b
LEFT JOIN (
SELECT sum(score)as score FROM 成績表 WHERE id=1
) c on 1=1

應(yīng)該是可以一步到位的,試一試

尋仙 回答

SELECT goods_id, price, add_time FROM tp_inventory_log WHERE 主鍵ID IN (SELECT max(主鍵ID) FROM tp_inventory_log GROUP BY goods_id) DESC LIMIT 25;
自增主鍵越大——時間越大,可以考慮下這樣的思路

舊顏 回答

已解決,是我沒搞清楚路由映射的原理。直接用域名/polls/正則即可訪問。謝謝大家!

糖豆豆 回答
    
    await organizationModel.findAll({
        where:{
            name: {
                $like: 'ext-%'
            }
        }
    }).then(ori => {
        // 這里需要修改,不能循環(huán)查詢數(shù)據(jù)庫
        Array.from(ori).forEach(record => {
            return userOrganizationModel.findAll({
                where: {
                    'organization_id':record.id
                }
            }).then(result => {
                console.log(result);
                ctx.json({
                    status: 100,
                    result
                });
            })
        });
        
    }).catch(err => {
        console.log(err);
        ctx.json({
            status: 101
        });
    });

};

忠妾 回答

因為AB兩張表的行數(shù)都是一樣的,所以外鏈接誰在左邊都可以,前提是你得保證這兩張表的數(shù)據(jù)有關(guān)聯(lián)性,否則后面一大堆null你受得了受不了

六扇門 回答

所有的字段在取值的時候都做容錯處理啊

var a = obj.b || ''

因為MongoDB對中文的支持需要安裝第三方分詞引擎RLP(Rosette Linguistics Platform)。這個引擎并不是免費的,所以對中文的支持也只在MongoDB企業(yè)版中支持。具體請參考文檔:https://docs.mongodb.com/manu...

笨尐豬 回答

額,倫敦時間21年16個小時....
傳的值有問題,斷電試一下吧...

愛礙唉 回答

使用python的collections

import json
from collections import defaultdict


def main():
    ret = defaultdict(list)
    data = [
     {'_id': '5abb4f9ca7e2c54c757b3e48',
      'amount': 8400,
      'buyerEmail': 'otzYzwMh24edWk8NxSJOqCSZREe0',
      'from': 'weixin',
      'orderid': '2018032816173212079',
      'real': 8400,
      'status': 1,
      'tradeNo': '4200000099201803287230332578',
      'uid': '5abb36051a62067bf7e30178' # 需要把ObjectId處理成字符串
    },
    {'_id': '5b6699f6df03ec3294d7c0a4',
      'amount': 100,
      'buyerEmail': 'otzYzwC3YwRdu7QrWLXqS3VRJybI',
      'from': 'weixin',
      'orderid': '2018080514322245193',
      'real': 100,
      'status': 1,
      'tradeNo': '4200000148201808052403940202',
      'uid': '5a5738411a62061972e128cb' # 需要把ObjectId處理成字符串
    },
    {'_id': '5b6699f6df03ec3294d7c0a4',
      'amount': 200,
      'buyerEmail': 'otzYzwC3YwRdu7QrWLXqS3VRJybI',
      'from': 'weixin',
      'orderid': '2018080514322245193',
      'real': 200,
      'status': 1,
      'tradeNo': '4200000148201808052403940202',
      'uid': '5a5738411a62061972e128cb' # 需要把ObjectId處理成字符串
    },
    ]
    
    for d in data:
        ret[d.get('uid')].append(d)
        
    print(json.dumps(ret, indent=2))
if __name__ == '__main__':
    main()
    
純妹 回答

left join換成join
appid加個索引

離觴 回答

IN xyz VARCHAR(xx) 加個長度限制.

法克魷 回答

哪個效率高,看一下執(zhí)行時間就可以了么,然后explain一下看看。
說點題外話:當(dāng)你覺得你同事屬于那種死腦筋,完全堅持自己想法的人的時候,或許他也這么想你呢,為什么一定要讓別人按你的想法寫代碼呢?除非遇到了很嚴重的效率問題

兔寶寶 回答

圖片描述
打印你的response,你會發(fā)現(xiàn)中間

<div class="num-wrap"><span>--</span></div><div class="nav-name">動畫</div>

是--還未加載,在js里加載的數(shù)據(jù)