您好,登錄后才能下訂單哦!
下面講講關于nodejs Sequelize和mysql有哪些常用的查詢命令,文字的奧妙在于貼近主題相關。所以,閑話就不談了,我們直接看下文吧,相信看完nodejs Sequelize和mysql有哪些常用的查詢命令這篇文章你一定會有所受益。
#去除unionid 重復的搜索結果 #query_resultsign 表名 select *, count(unionid) from query_resultsign where issign='false' group by unionid ; #去除unionid 重復的搜索結果 #query_resultsign 表名 select *, count(unionid) from query_resultsign where issign='true' group by unionid ; #求未簽約用戶的平均訪問頻率(即為求搜索結果列的平均值issign='false' 未簽約) #cuid 是unid的別名 #query_resultsign 表名 select AVG(bs.cuid) as unUserAvg FROM (select *, count(unionid) cuid from query_resultsign where issign='false' group by unionid ) as bs; #求平均值 #(即為求搜索結果issign='true' count的平均值) #bs為子查詢的別名,不帶別名會報錯 #query_resultsign 表名 select AVG(bs.cuid) userAvg FROM (select *, count(unionid) cuid from query_resultsign where issign='true' group by unionid ) as bs; #增加id 列 int #query_resultsign ALTER TABLE query_resultsign add id int; #使表 query_resultsign (上一步)增加的列變為自增列 alter table query_resultsign change id id int NOT NULL AUTO_INCREMENT primary key; #獲取兩列數據中有相同數據的列 #query_resultsign 表名 select p1.* from query_resultsign p1,query_resultsign p2 where p1.id<>p2.id and p1.x = p2.x and p1.y = p2.y ; #查找表query_resultsign unionid 相同的用戶 select p1.* from query_resultsign p1,query_resultsign p2 where p1.id<>p2.id and p1.unionid = p2.unionid ;
sequelize 的調用sql語句的方法順帶提一下,網上大多教程都是用model 查詢的,每次都要建立model。有點麻煩 。配置的教程請參看配置教程。
sequelize調用sql主要用query(sql,{})方法:
var Sequelize = require('sequelize');//引入sequelize var sequelize = require('./../../database/dataconfig'); //引入連接配置文件 //查找簽約用戶 exports.selectHeatData = function (req, res) { return sequelize.query("select * from `query_resultSign` where issign ='true'", { type: sequelize.QueryTypes.SELECT }).then(data => { // console.log('******', data); res.send(data); }).catch(err => { console.log('錯誤', err) }) } //其他方法就是換了下sql語句
主要知識點就是query方法內傳入查詢出的結果的類型 { type: sequelize.QueryTypes.SELECT } 這樣就不用手動轉換成json對象了。
附帶配置文件代碼
dataconfig.js
var Sequelize = require('sequelize'); module.exports = new Sequelize('數據庫名', '用戶名', '登錄密碼', { host: 'localhost', // 數據庫地址 dialect: 'mysql', // 指定連接的數據庫類型 operatorsAliases: false, pool: { max: 5, // 連接池中最大連接數量 min: 0, // 連接池中最小連接數量 idle: 10000 // 如果一個線程 10 秒鐘內沒有被使用過的話,那么就釋放線程 }});
對于以上nodejs Sequelize和mysql有哪些常用的查詢命令相關內容,大家還有什么不明白的地方嗎?或者想要了解更多相關,可以繼續關注我們的行業資訊板塊。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。