鍍金池/ 問答/ 數(shù)據(jù)庫問答
愛礙唉 回答

大概猜測了一下,你可能是這個(gè)意思。以下是一個(gè)ObjectId:

ObjectId("5a6940702c4df0af27ffc4ed")

如果你去數(shù)引號里面的東西,長度是24。但這不是實(shí)際存儲的長度,而是實(shí)際存儲的數(shù)據(jù)的十六進(jìn)制表現(xiàn)形式。如果不知道這是什么意思,可能要回憶一下大學(xué)的課程了。1個(gè)字節(jié)的表示:

  • 二進(jìn)制:00000000~11111111
  • 十進(jìn)制:0~255
  • 十六進(jìn)制:00~ff。

所以12個(gè)字節(jié)的十六進(jìn)制表示是24個(gè)字符。但實(shí)際上它只有12個(gè)字節(jié),存儲也只占12字節(jié)。
關(guān)于ObjectId的具體組成可以參考文檔:ObjectId
至于是不是太長……太長的標(biāo)準(zhǔn)是什么?

雨蝶 回答

你只是想把本地代碼上傳到遠(yuǎn)程ftp服務(wù)器。
簡單起見,每次修改完畢把本地代碼打tar包,ssh連接到服務(wù)器后用rz直接上傳,全量或者部分更新。

你非要用git來同步代碼的話,
可以在github、gitee.com等網(wǎng)站開一個(gè)私有的倉庫,代碼都同步到第三方。
或者自己在ftp服務(wù)器上搭建一個(gè)gitlab服務(wù)

浪婳 回答

先問一個(gè)問題,如果放在關(guān)系數(shù)據(jù)庫,這個(gè)需求你準(zhǔn)備怎么做?先UNIONORDER BY?做是能做到,但是是一個(gè)無法使用索引的內(nèi)存排序,效率可想而知。
如果從效率出發(fā)(沒有說明,所以并不知道效率是不是你的第一關(guān)注點(diǎn)),這些數(shù)據(jù)既然是要放在一起排序的,說明它們有一定的內(nèi)在聯(lián)系,那么為什么不把它們放在一個(gè)集合里?MongoDB的無模式設(shè)計(jì)是支持你這樣做的,并且在合適的場景下也建議這樣做。不過這里也沒提到實(shí)際的場景,所以無法進(jìn)一步分析。

澐染 回答

clipboard.png

我這個(gè)是可以的。flask-sqlachemy遷移只能添加字段,不能修改和刪除的。看下你的models.py中表和數(shù)據(jù)庫表是否一致。

拽很帥 回答

一樓正解??梢允褂?update 語句配合 replace() 函數(shù)

若相惜 回答

三個(gè)引號?'''ssss
sssss
ssss
'''
這樣?沒記錯(cuò)的話

孤酒 回答

建議單獨(dú)創(chuàng)建表保存最近聯(lián)系人。
1、從功能設(shè)計(jì)上看,最近聯(lián)系人是個(gè)獨(dú)立的功能,不依賴于聊天記錄,這一點(diǎn)你已經(jīng)說過了。
2、從系統(tǒng)性能方面考慮,每次從聊天日志表從計(jì)算最近聯(lián)系人,數(shù)據(jù)量大的時(shí)候會存在性能瓶頸。

殘淚 回答

不是union all的問題吧。
sql語句最后有g(shù)roup by語句, 相同的studyCenterName,grade只保留一條,去掉看是否你想要的結(jié)果。

另外,這個(gè)sql的寫法,使用group by之后,在select語句中非group by的字段沒用聚合函數(shù),在myslq高版本或其他數(shù)據(jù)庫會報(bào)錯(cuò)的。

悶油瓶 回答

$sql = "select count(*) as userNum from ajax_test1 where userName='$uName'";

$result = mysqli_query($con, $sql);
$res = mysqli_fetch_array($result);
//print_r($res);
echo $res['userNum'];

笨小蛋 回答
  1. 你的兩個(gè)截圖似乎執(zhí)行的并不是一個(gè)查詢(至少第二個(gè)截圖有sort,第一個(gè)Java代碼沒有)。
  2. 因?yàn)闆]有說明這是什么圖形界面,執(zhí)行計(jì)劃也折疊起來看不見,所以無法判斷第二張截圖上的50是代表的意思是否影響到執(zhí)行計(jì)劃只取前50條結(jié)果。相比之下,Java那句代碼可是會把全部結(jié)果都取出來。這會造成很大的時(shí)間差異。

最后提點(diǎn)額外的建議與主題無關(guān)。能用文本粘貼的代碼、日志、執(zhí)行結(jié)果之類的東西,都用文本粘貼出來。圖片不僅看起來不方便,有時(shí)候截不全也對我們回答問題很不利。而且有時(shí)候我們需要使用你們的代碼、數(shù)據(jù)等來做測試,如果這時(shí)候只有截圖,基本上很多人當(dāng)場就會放棄了。

心悲涼 回答

代碼2:
你把Function.call當(dāng)成一個(gè)function看待。這個(gè)function上調(diào)用apply方法,那么第一個(gè)參數(shù)就是this對象,而Function.call所需要的this對象必須是一個(gè)funtion,你傳遞的{},是一個(gè)空的對象,那么就要做類型轉(zhuǎn)換,也就是從{}轉(zhuǎn)換成一個(gè)function,那么肯定是會報(bào)類型轉(zhuǎn)換錯(cuò)誤,所以safari的報(bào)錯(cuò)是最嚴(yán)謹(jǐn)?shù)摹?/p>

墨染殤 回答

1個(gè)用戶表:User(id, name, ...)
1個(gè)地區(qū)表:Area(id, pid, name, ...) # 市的pid為null
1個(gè)權(quán)限表:Auth(uid, aid, ...)

毀了心 回答
http.get({
        hostname: 'songsearch.kugou.com',
        path: `/song_search_v2?callback=jQuery1124022791447453507696_1520336519789&keyword=${encodeURIComponent('彈指 一揮間')}&page=1&pagesize=30&userid=-1&clientver=&platform=WebFilter&tag=em&filter=2&iscorrection=1&privilege_filter=0&_=1520336519815`,
        headers: {
            'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36'
        }
    },
    res => {
        res.on('data', data => {
            console.log(data.toString())
        })
    }
)
掛念你 回答

兩個(gè)都是準(zhǔn)確的,你沒有考慮時(shí)區(qū)的問題。MongoDB存儲的是GMT0時(shí)間,MySQL給你的是服務(wù)器時(shí)區(qū)(中國區(qū)),也就是GMT+8。算一下正好差8小時(shí),都沒有錯(cuò)。

雨萌萌 回答

create_time,user_id加個(gè)聯(lián)合索引,求總額sql如下:

select sum(current_money+change_money) all
from (select user_id,max(create_time) crt from A 
where create_time<='2017-11-12 00:00:00' group by user_id) aa
join A bb on aa.user_id=bb.user_id and aa.crt=bb.create_time;

然后就說說你的業(yè)務(wù)邏輯問題了,這種總額問題肯定是要單獨(dú)的統(tǒng)計(jì)表來維護(hù)的,
每天的交易額,進(jìn)賬、出賬,每次統(tǒng)計(jì)一天就很簡單了,
總額統(tǒng)計(jì)邏輯:前一天的余額總額+今天的額度變化=今天的余額總額
這樣的話只需要最開始全表統(tǒng)計(jì)一次即可,后面增量按照時(shí)間篩選統(tǒng)計(jì)性能不會差的,
最后就是這種交易流水表要分表的吧,按時(shí)間或者用戶id分表即可,歷史數(shù)據(jù)還可以另外存儲

貓館 回答

excel使用這個(gè)phpexcel

至于數(shù)據(jù)就需要分片寫入excel文件,一次寫入1000條或者2000條啊,一次數(shù)據(jù)太多,會導(dǎo)致內(nèi)存溢出導(dǎo)致錯(cuò)誤,每一1000位一個(gè)文件,最后在合并文件就可以了,一次寫入50000條,這種做法是不支持的(除非你服務(wù)器很好)

懶豬 回答

與其這樣,不如把自增的ID,改成自定義的ID。比如可以用 redis 的inc生成自增ID。

陪我終 回答

會不會在你 select count(*) 之后,insert之前,別的線程插入了該數(shù)據(jù)呢?
要不你多打印點(diǎn)日志,看看問題出在哪。
另外,你可以試試:設(shè)置一下 唯一性約束,然后使用:
insert ... on duplicate key update ...
來操作:無則插入,有則更新