db.<coll>.update({條件}, {$set: {字段}, $setOnInsert: {date: new Date()}}, {upsert: true});
加上$setOnInsert表示只有在插入的時(shí)候才帶這個(gè)字段。跟關(guān)系數(shù)據(jù)庫(kù)不同的是,這個(gè)時(shí)間來自你的應(yīng)用,而不是數(shù)據(jù)庫(kù)加上去的默認(rèn)值。
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'db_blog.t2.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
其實(shí)這錯(cuò)誤說得挺明白了
推測(cè)你服務(wù)器上的Mysql版本是5.7?
mysql 文檔:https://dev.mysql.com/doc/ref...
Mysql
配置通過這下面語(yǔ)句disable only_full_group_by
。
mysql> set global sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
mysql> set session sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
select t2.id,t2.typeName,count(t1.id) as blogCount from t_blog t1 right join t_blogType t2 on t1.typeId=t2.id group by t2.typeName order by t2.orderNo;
修改為
SELECT t2.id,
t2.typeName,
count(t1.id) AS blogCount
FROM t_blog t1
RIGHT JOIN t_blogType t2 ON t1.typeId=t2.id
GROUP BY t2.typeName,
t2.id
ORDER BY t2.orderNo;
注意改動(dòng),在group by里加了t2.id
/data/db
是只讀的,無法創(chuàng)建鎖(文件)。
修改下/data/db
目錄權(quán)限。
示例: chmod +w -R $(whoami) /data/db
<=2.2.x的驅(qū)動(dòng)這樣寫沒有問題。如果你沒有給具體版本號(hào),現(xiàn)在會(huì)安裝3.0驅(qū)動(dòng),API已經(jīng)變化了。你可以
npm install
。建議使用官方鏡像,或者mariadb可能是更好的選擇
https://store.docker.com/imag...
在Live Templates
中添加一個(gè)模版,如下圖:
在Abbreviation
中鍵入關(guān)鍵字,Description
是描述(可選),在Template Text
中填入代碼模版。
Template Text 例子,可自行修改
import {$END$} from '$MODULE_VAR$';
應(yīng)用設(shè)置后,在編輯器中鍵入部分關(guān)鍵字,就可以從智能提示中看到剛剛設(shè)定的關(guān)鍵字了,按Tab
鍵后,會(huì)出現(xiàn)import {} from '';
,光標(biāo)首先會(huì)在單引號(hào)
中,輸入完畢后,會(huì)跳轉(zhuǎn)到花括號(hào)
中。
打開代碼片段后,會(huì)看到這樣的界面
選擇新建全局代碼片段文件
或者指定語(yǔ)言建立,我的習(xí)慣是指定語(yǔ)言,防止污染其他語(yǔ)言的代碼片段
在TypeScript與JavaScript兩種語(yǔ)言中各添加一個(gè)自己的代碼片段,如下
{
"import_module": {
"prefix": "importfrom",
"body": [
"import {${2:moduleName}} from '${1:path}';",
"" // 去除這行,就不會(huì)在插入import from同時(shí)在下方插入一個(gè)空白行了
],
"description": "insert a import from"
}
}
保存后,就可以愉快的使用關(guān)鍵字導(dǎo)入模塊啦~
參考資料:https://code.visualstudio.com...
已經(jīng)關(guān)了啊,關(guān)完shell當(dāng)然連不上了提示reconnect failed.
好奇葩的需求。估計(jì)是哪個(gè)面試官出的題吧。
如果誰(shuí)在項(xiàng)目中這樣做,直接就扔菜刀了。
正常人的做法:Table
的數(shù)據(jù)在全局的state
中存放。
添加的時(shí)候,直接將添加的數(shù)據(jù)保存到數(shù)據(jù)庫(kù),然后再調(diào)一次getList
接口。
自己找到問題了。將mapperLocations的地址寫的更詳細(xì)就沒問題了。
SELECT * FROM fs_info WHERE month=2 and (a<>0 OR b<>0 OR c<>0)
你回寫這么多字段,很難說都是當(dāng)前用戶需要的。可以考慮兩點(diǎn)建議, 一是可以根據(jù)具體查詢場(chǎng)景對(duì)字段分解下。二是對(duì)部分聯(lián)合查詢建立視圖,對(duì)視圖再加上條件查詢,業(yè)務(wù)邏輯更清晰,同時(shí)權(quán)限也好控制。還有就是對(duì)改動(dòng)不多的字段進(jìn)行適當(dāng)冗余,保存在多個(gè)表里,這樣可以提高查詢效率。
個(gè)人認(rèn)為遵守范式前提保證查詢效率和開發(fā)時(shí)間,得到的好處是便于維護(hù)和減少存儲(chǔ)空間(誰(shuí)還在乎這個(gè)?)。需要做的就是好處和成本之間做均衡。
SELECT * FROM table
WHERE json_cloumn_name -> '$[*].height' > 7
select * from T1 where exists(select 1 from T2 where T1.a=T2.a)
select * from T1 where T1.a in (select T2.a from T2)
簡(jiǎn)而言之,一般式:外表大,用IN;內(nèi)表大,用EXISTS。
》詳情《
兩種都要有,各有使用場(chǎng)景,具體到你說的這種情況,適合用sql鏈接查詢。
因?yàn)閟ql鏈接查詢只需要一次數(shù)據(jù)庫(kù)IO,而多個(gè)dao,需要多次數(shù)據(jù)庫(kù)IO,要知道數(shù)據(jù)庫(kù)IO是很耗時(shí)的。
所以,sql鏈接查詢,把計(jì)算交給數(shù)據(jù)庫(kù),相對(duì)來說,性能更高一些。
重新安裝了mongoDB在試就可以了
int類型的(包括tinyint,smallint...)后面括號(hào)內(nèi)的數(shù)字,一般情況下是不需要專門設(shè)置的,默認(rèn)的就好了。
因?yàn)樗慌c顯示有關(guān),和占用的空間無關(guān)。
而只有一種情況下,我們需要用到:
當(dāng)數(shù)字的長(zhǎng)度小于指定位數(shù)時(shí),用0補(bǔ)齊。這時(shí)需要結(jié)合zerofill使用
比如 tinyint(2) zerofill
如果是3,則顯示為 03
如果是122,則顯示為 122
如果你不使用zerofill,而括號(hào)內(nèi)的數(shù)字隨便寫,效果是一樣的。
1.房產(chǎn)-工作表
分類ID 房產(chǎn)信息ID 工作信息ID
2.房產(chǎn)表
房產(chǎn)信息ID 屬性1 屬性2 ……
3.工作表
工作信息ID 屬性1 屬性2 ……
個(gè)人理解如果數(shù)據(jù)庫(kù)是這么設(shè)計(jì)的話,初衷是讓在應(yīng)用程序中處理:按照逗號(hào)分隔,逐條查詢r(jià)ule表,更常規(guī)的做法是用一個(gè)用戶和規(guī)則的關(guān)聯(lián)表。
如果非要用sql做關(guān)聯(lián)查詢,可以用FIND_IN_SET,不過效率不會(huì)太高。
select *
from
(select '1,2,3,4,5' ids) t1 inner join (select 1 id, '張三' name union select 2, '李四') t2
on FIND_IN_SET(t2.id, t1.ids) > 0
select date, count('字段') as '顯示的名字' , count('字段') as '顯示的名字' from `表` group by date
//date 表示 日期的字段名
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國(guó)IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國(guó)家
北大青鳥中博軟件學(xué)院創(chuàng)立于2003年,作為華東區(qū)著名互聯(lián)網(wǎng)學(xué)院和江蘇省首批服務(wù)外包人才培訓(xùn)基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團(tuán)創(chuàng)建于1999年,經(jīng)過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術(shù)與教育服務(wù)機(jī)構(gòu),發(fā)展為教育服務(wù)業(yè)的綜合性企業(yè)集團(tuán),成為集合面授教學(xué)培訓(xùn)、網(wǎng)
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國(guó)一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國(guó)成功上市,融資1
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
精通HTML5和CSS3;Javascript及主流js庫(kù),具有快速界面開發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁(yè)制作和網(wǎng)頁(yè)游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國(guó)Software AG 技術(shù)顧問,美國(guó)Dachieve 系統(tǒng)架構(gòu)師,美國(guó)AngelEngineers Inc. 系統(tǒng)架構(gòu)師。