鍍金池/ 問(wèn)答/ 數(shù)據(jù)庫(kù)問(wèn)答
安于心 回答

WITH locs(id,StructureCode,StructureName,StructureParentId)

        AS
        (
        SELECT Id,StructureCode,StructureName,StructureParentId FROM Structure WHERE StructureParentId=$id
        UNION ALL
        SELECT A.id,A.StructureCode,A.StructureName,A.StructureParentId FROM Structure A,locs B ON A.StructureParentId = B.id
        )
        
        select s.Id , st.StructureCode,s.StandardName, s.StandardNumber , s.PublishDate,s.ImplementDate ,s.OldStandardNumber from 
        Standard s ,Structure st LEFT JOIN StdFile sf ON s.StandardNumber=sf.StandardNumber WHERE s.StructureID=$id OR s.StructureID IN (SELECT id FROM locs) group by s.Id 

已經(jīng)測(cè)試數(shù)據(jù)跟你想要的一樣

枕頭人 回答

中間沒符號(hào)的話,你完全可以使用int

Laravel 的查詢構(gòu)造器和 Eloquent ORM 用的是 PDO 的預(yù)查, 目的是防止 SQL 注入

撿肥皂 回答

keep-alive 不需要存到vuex里面嗎。。用戶滑動(dòng)或者什么時(shí)候觸發(fā)更新,這是產(chǎn)品設(shè)計(jì)上的鍋了

喵小咪 回答

SELECT b.id as '用戶ID' ,b.alias as '用戶昵稱' ,a.fromId as '發(fā)件人id',b.alias as '發(fā)件人昵稱',a.toId as '收件人id',
c.alias as '收件人昵稱', a.content as '發(fā)送內(nèi)容'
FROM msgs as a
INNER JOIN users as b
ON a.fromId = b.id
INNER JOIN users as c
ON a.toId = c.id

clipboard.png

糖豆豆 回答

union,至于判斷哪個(gè)表標(biāo)題為空的事,還是交給編程語(yǔ)言去做吧

小眼睛 回答

B聊天框的滾動(dòng)軸自動(dòng)滾動(dòng)到最下方前先加一個(gè)判斷,判斷是否有上翻操作

傻叼 回答

一開始就要做db級(jí)分區(qū),現(xiàn)在刪除痛苦了吧

伴謊 回答

如果實(shí)時(shí)性沒有要求的話可以用緩存做?;蛘呤褂卯惒讲樵兂鰜?lái)結(jié)果后放到緩存中

柒槿年 回答

你好,我看到你回答一個(gè)關(guān)于網(wǎng)站中英文切換的問(wèn)題,你做過(guò)這樣的網(wǎng)站嗎?能幫幫我嗎?

使用DelayQueue

DelayQueue能做什么?
在我們的業(yè)務(wù)中通常會(huì)有一些需求是這樣的:

  1. 淘寶訂單業(yè)務(wù):下單之后如果三十分鐘之內(nèi)沒有付款就自動(dòng)取消訂單。
  2. 餓了嗎訂餐通知:下單成功后60s之后給用戶發(fā)送短信通知。

那么這類業(yè)務(wù)我們可以總結(jié)出一個(gè)特點(diǎn):需要延遲工作。
由此的情況,就是我們的DelayQueue應(yīng)用需求的產(chǎn)生。
給你個(gè)鏈接 http://blog.csdn.net/u0110017... 不過(guò)這是JAVA的 不知道PHP 是什么

替身 回答

這就涉及到事物的隔離級(jí)別了.隔離級(jí)別越高,越能保證數(shù)據(jù)的完整性和一致性,但是對(duì)并發(fā)性能的影響也越大

事務(wù)隔離級(jí)別                    臟讀     不可重復(fù)讀    幻讀
讀未提交(read-uncommitted)    是        是            是
不可重復(fù)讀(read-committed)    否        是            是
可重復(fù)讀(repeatable-read)     否        否            是
串行化(serializable)          否        否            否

我以為 回答

從MongoDB 3.6開始支持這樣的方法,參考文檔:$[]運(yùn)算符
3.6 對(duì)數(shù)組操作做了一些強(qiáng)化,關(guān)于數(shù)組的其他操作參考文檔:Array Update Operators

墨沫 回答

MyISAM 因?yàn)樗奈募撬饕募?和 數(shù)據(jù)文件存的,而且索引文件存的是地址,所以基本上是用于頻繁的查詢的;
InnoDB 因?yàn)槭谴娴氖菙?shù)據(jù)文件,索引也都放在一起,而且又擁有事務(wù),所以它幾乎用于增刪改操作,當(dāng)然,如果數(shù)據(jù)量小的話,也可以存于innodb引擎的,比如10W內(nèi);;然后其他的就根據(jù)你業(yè)務(wù)上的需要而進(jìn)行調(diào)整而選擇哪個(gè)引擎了。

敢試 回答

很明顯你復(fù)制出的這張表的腳本內(nèi)

有與其他表相關(guān)聯(lián)的約束或者索引

所以才會(huì)報(bào)這個(gè)錯(cuò)

要么你自己新建約束或者索引

因?yàn)槟闶菑?fù)制出來(lái)的,所以約束或者索引的名稱重復(fù)了

舊酒館 回答

是不是沒有commit,數(shù)據(jù)庫(kù)可能設(shè)置的不是自動(dòng)commit,你insert了數(shù)據(jù)之后沒有commit的話,當(dāng)次connect都算在做一個(gè)事務(wù),所以可以select到數(shù)據(jù),但是斷開connect之后,你的數(shù)據(jù)就不見了

小眼睛 回答

好吧,發(fā)了問(wèn)題不多久就明白該怎么做了。
直接

model.findOne({/*篩選條件*/},function(err,doc){
    //doc就是一個(gè)父文檔,然后賦給一個(gè)變量,直接操作這個(gè)變量后,直接doc.save()就好了
    let a = doc;
    // 直接操作a.['字段'][0],然后調(diào)用doc.save()就好了
    doc.save(function(err){
        if(err){
            console.log(err);
        }
    })
})
空白格 回答

寫一個(gè)我的思路,采用減法
我覺得你的s應(yīng)該是一個(gè)固定的數(shù)吧,既然這樣那么能出現(xiàn)的所有數(shù)據(jù)也已經(jīng)固定下來(lái)了
比如s=1000000,那么1~1000000里的隨機(jī)整數(shù)的全部可能也固定下來(lái)了
那么現(xiàn)在數(shù)據(jù)庫(kù)里創(chuàng)1000000條數(shù)據(jù),然后用戶來(lái)拿一個(gè)數(shù)了,就全部取出來(lái),然后隨機(jī)一個(gè)整數(shù)出來(lái),把這個(gè)數(shù)返給用戶的同時(shí)給這個(gè)數(shù)在數(shù)據(jù)庫(kù)里設(shè)置一個(gè)字段,比如used:true
下次用戶來(lái)取的時(shí)候再?gòu)臄?shù)據(jù)庫(kù)里取全部數(shù),不過(guò)要帶上篩選條件,used不為true的,把取出的集合再隨機(jī)一個(gè)數(shù)出來(lái)分配給用戶,再把隨機(jī)出來(lái)的數(shù)在數(shù)據(jù)庫(kù)里設(shè)置一個(gè)相同字段,比如used:true
以此類推
這樣應(yīng)該不會(huì)存在重復(fù)的問(wèn)題,開銷的話也只是查一次數(shù)據(jù)庫(kù)而已,比你的1,2應(yīng)該都快
當(dāng)然這個(gè)還有優(yōu)化的空間,比如這個(gè)所有的數(shù)據(jù)也不一定存在數(shù)據(jù)庫(kù)里啊,redis應(yīng)該也更快,等等。我只是說(shuō)下我的思路

有你在 回答

select * from

select * from list where grab = 1 and  day(now()) - day(updated_at) >10 as g1 order by  updated_at
union
select * from list where grab = 0 as g2 order by updated_at