第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

什么是正確的方法?用javascript和mysql

什么是正確的方法?用javascript和mysql

元芳怎么了 2019-04-27 15:15:03
我有一個(gè)名為“cars”的mysql表,我在其中存儲(chǔ):“品牌”,“模型”,“顏色”。我想得到這樣的數(shù)據(jù):[    {        brand: "audi",        cars: [            {                "model": "coupe",                "color": "red",            },            {                "model": "a3",                "color": "blue",            },        ]    },    {        brand: "renault",        cars: [            {                "model": "modus",                "color": "white",            },            {                "model": "clio",                "color": "green",            },        ]    },    ...]所以,我正在做的是第一個(gè)mysql查詢,我按品牌分組,然后我迭代結(jié)果以獲得每個(gè)品牌的所有汽車:const query = "SELECT brand FROM cars GROUP BY brand"mysql.query(query, values, (err, result) => {    for (let i = 0; i < result.length; i++) {        const query2 = "SELECT model, color FROM cars WHERE brand = ?"        const values2 = [result[i].brand]        mysql.query(query2, values2, (err2, result2) => {            result[i].cars = result2            callback(result)        })    }})我正在展示的代碼正在運(yùn)行,但我不認(rèn)為對(duì)mysql查詢進(jìn)行迭代是一件好事。我做了很多研究,我真的不知道該怎么做。是否可以通過一個(gè)單獨(dú)的mysql查詢獲得此結(jié)果?或者我應(yīng)該從“cars”表中獲取所有行,然后使用JS填充格式化數(shù)據(jù)?或者我應(yīng)該繼續(xù)使用這個(gè)mysql查詢迭代?謝謝
查看完整描述

3 回答

?
冉冉說

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超1個(gè)贊

這樣的事情應(yīng)該可以解決問題。它的客戶端轉(zhuǎn)型雖然:


let carArr = []


const query = "SELECT brand, model, color from cars"

mysql.query(query, values, (err, result) => {

    for (let i = 0; i < result.length; i++) {

        // Get the index of the brand in the carArr array

        let brandIndex = carArr.map(c => c.brand).indexOf(result.brand)


        // If the brand is not already in carArr, enter a new value for it

        if(brandIndex == -1)

            carArr.push({"brand": result.brand, "cars": [{"model": result.model, "color": result.color}]})


        // If the brand already exists, add the car type to this specific barnd

        else

            carArr[brandIndex].cars.push({"model": result.model, "color": result.color})

    }

})


查看完整回答
反對(duì) 回復(fù) 2019-05-17
  • 3 回答
  • 0 關(guān)注
  • 494 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)