0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用ChatGPT解決開(kāi)發(fā)問(wèn)題

京東云 ? 來(lái)源:jf_75140285 ? 作者:jf_75140285 ? 2024-07-19 16:27 ? 次閱讀

數(shù)據(jù)庫(kù)問(wèn)題

案例1

這段 SQL 查詢語(yǔ)句是用于獲取最近更新的前 10 個(gè)銷(xiāo)售訂單 sales_order 關(guān)聯(lián)的交付信息 sales_order_delivery_info。

SELECT
*
FROM
(
SELECT
*
FROM
  sales_order a
WHERE
trans_type 訂單交易類型 AND a.is_obsolete = '0' 
ORDER BY
a.update_date DESC LIMIT 0, 
10
)t
LEFT JOIN sales_order_delivery_info f ON t.order_id = f.sales_order_id order_id(訂單ID) 和 sales_order_id(訂單交付ID) 進(jìn)行關(guān)聯(lián)
ORDER BY
t.update_date DESC 
a.trans_type = '0'

原始語(yǔ)句解析:

主要用于獲取銷(xiāo)售訂單和相關(guān)的交付信息
#SELECT * FROM sales_order a WHERE a.trans_type = '0' AND a.is_obsolete = '0' ORDER BY a.update_date DESC LIMIT 0,10 在第一個(gè)子查詢中,使用 WHERE 子句篩選條件來(lái)僅選擇銷(xiāo)售訂單交易類型為0且未過(guò)時(shí)的記錄。使用ORDER BY 子句和DESC關(guān)鍵字按更新日期降序排列,以確保最近的訂單出現(xiàn)在頂部。LIMIT子句用于限制結(jié)果集大小,此處設(shè)置為僅顯示前10個(gè)最近的訂單。
# LEFT JOIN sales_order_delivery_info f ON t.order_id = f.sales_order_id
在主查詢中,使用LEFT JOIN子句將銷(xiāo)售訂單子查詢結(jié)果和sales_order_delivery_info表進(jìn)行連接,使用ON子句指定連接條件,即在銷(xiāo)售訂單表和交付信息表之間使用銷(xiāo)售訂單ID進(jìn)行連接。此查詢將返回所有匹配的行,包括沒(méi)有匹配的行。
#ORDER BY t.update_date DESC
最后,再次使用ORDER BY子句和DESC關(guān)鍵字按更新日期降序排列結(jié)果集。整個(gè)查詢的結(jié)果將包括 sales_order 和sales_order_delivery_info 兩個(gè)表的列,并將前10個(gè)最近的銷(xiāo)售訂單和相關(guān)的交付信息作為結(jié)果返回。

問(wèn)題分析:

mysql數(shù)據(jù)庫(kù)版本: 8.0
問(wèn)題前提條件: 單表有40多萬(wàn)數(shù)據(jù)
出現(xiàn)問(wèn)題: sql執(zhí)行 order By執(zhí)行效率下降
常規(guī)思路: 優(yōu)化全表掃描查詢只查詢相關(guān)字段優(yōu)化子查詢

基于上面的問(wèn)題向 GPT 進(jìn)行提問(wèn)

接下來(lái)的對(duì)話你將以一名數(shù)據(jù)庫(kù)管理工程師的身份和我聊天
目前我們使用的數(shù)據(jù)庫(kù)版本為 mysql 8.0 在單表中數(shù)據(jù)有40多萬(wàn) sql語(yǔ)句在分頁(yè)前進(jìn)行order By 執(zhí)行效率立刻下降 請(qǐng)根據(jù)上述的業(yè)務(wù) sql 給出優(yōu)化建議 具體 sql 如下:
SELECT
* FROM
( SELECT
* FROM
  sales_order a
 WHERE
  a.trans_type = '0'
  AND a.is_obsolete = '0'
 ORDER BY
  a.update_date DESC
  LIMIT 0,
  10
)t
 LEFT JOIN sales_order_delivery_info f ON t.order_id = f.sales_order_id
ORDER BY
t.update_date DESC
我的業(yè)務(wù)要求 sql 語(yǔ)句查詢高效并且支持高并發(fā)業(yè)務(wù)場(chǎng)景基于這個(gè)業(yè)務(wù)前提請(qǐng)?jiān)俳o我一份優(yōu)化后的 sql 語(yǔ)句并詳細(xì)解釋一下優(yōu)化后的 sql 語(yǔ)句

wKgZomaaI3eAF_cdAAnjHNg7B3w449.png

wKgZomaaI3mAI_Y-AAvwGgqYwE8420.png

項(xiàng)目問(wèn)題思路實(shí)現(xiàn)以及案例

案例一

項(xiàng)目中 一張客戶表有 1 億條記錄,如果要?jiǎng)h除其中的 10 萬(wàn)條記錄能有什么處理方法和步驟

問(wèn)題分析

mysql數(shù)據(jù)庫(kù)版本: 8.0
問(wèn)題前提條件:
表結(jié)構(gòu): 這個(gè)表包含了客戶的基本信息,包括 ID、名字、郵箱、電話、地址、城市、省、郵政編碼等。還有兩個(gè)時(shí)間戳字段,用于記錄該記錄的創(chuàng)建時(shí)間和最后更新時(shí)間 出現(xiàn)問(wèn)題: 要?jiǎng)h除其中的10萬(wàn)條記錄
常規(guī)思路: 根據(jù)條件進(jìn)行執(zhí)行刪除分頁(yè)

基于上面的問(wèn)題向GPT進(jìn)行提問(wèn)

接下來(lái)的對(duì)話你將以一名數(shù)據(jù)庫(kù)管理工程師的身份和我聊天,我的數(shù)據(jù)庫(kù)版本為 mysql8.0 在項(xiàng)目中一張客戶表有1億條記錄,其中表包含了客戶的基本信息,包括:ID、名字、郵箱、電話、地址、城市、省、郵政編碼等。還有兩個(gè)時(shí)間戳字段,用于記錄該記錄的創(chuàng)建時(shí)間和最后更新時(shí)間,要?jiǎng)h除其中的符合條件10萬(wàn)條記錄,請(qǐng)?zhí)峁┧悸芬约皩?shí)現(xiàn)步驟,同時(shí)詳細(xì)解釋下為什么這樣做

wKgaomaaI3yAVhMfAAnrwyDvPYI411.png

wKgZomaaI32ANtwNAAJ8-1NpqUk471.png

wKgaomaaI36AS49mAAPBnCTD9WM292.png

請(qǐng)?jiān)谏鲜龌A(chǔ)上進(jìn)行性能優(yōu)化 提供實(shí)現(xiàn)具體代碼并詳細(xì)闡述過(guò)程 在代碼中要有詳細(xì)注釋

wKgZomaaI4CAFuIRAAnyzwoI7_w206.png

wKgaomaaI4OASRXOAAQ8BceEXwI597.png

環(huán)境問(wèn)題提問(wèn)技巧

案例一

使用 docker 啟動(dòng) redis,redis 再 docker 中的配置文件在哪?容器中 redis 的配置文件不能用默認(rèn)的,所以想修改。

問(wèn)題分析

環(huán)境記錄 : centos 7.6.1
dokcer/redis版本: CE(社區(qū)版本最新的) /5.0.2
問(wèn)題前置條件: 使用 docker 啟動(dòng) redis
問(wèn)題內(nèi)容: redis 在 docker 中的配置文件在哪?
常規(guī)思路: 直接使用 -v 文件:docker目錄(掛載名)進(jìn)行目錄掛載

基于上面的問(wèn)題向 GPT 進(jìn)行提問(wèn)

接下來(lái)的對(duì)話你將以一名運(yùn)維工程師的身份和我聊天,我的環(huán)境系統(tǒng)環(huán)境 centos 7.6.1,系統(tǒng)中 docker 的版本是最新穩(wěn)定版,docker 中部署的 redis 版本為 5.0.2,docker部署的 redis 默認(rèn)配置文件在哪?請(qǐng)問(wèn)如何修改以及如何將它掛載到本地文件。

wKgZomaaI4SAFCXAAAeKbRCEZ7E132.png

wKgaomaaI4aAJufsAAYdJaHlhjg058.png

請(qǐng)?jiān)敿?xì)解釋每條命令的含義

wKgZomaaI4mAFM6uAAs_79qOYBk134.png

wKgaomaaI4qAUql7AAbkTO92ZCE779.png

GPT 輔助源碼學(xué)習(xí)

在研究 nacos 源碼時(shí)遇到的問(wèn)題

對(duì)該方法不明白
grpcconn.setPayloadstreamobserver(payloadstream0bserver); 在 nacos 的源碼中為什么這個(gè) set 方法一調(diào)用就往服務(wù)端發(fā)一個(gè)請(qǐng)求。

問(wèn)題分析 :

nacos源碼問(wèn)題 : 版本 2.0
問(wèn)題描述:在 nacos 的源碼中為什么這個(gè) set 方法一調(diào)用就往服務(wù)端發(fā)一個(gè)請(qǐng)求grpcconn.setPayloadstreamobserver(payloadstream0bserver);
常規(guī)理解:這段代碼的目的是為 gRPC 連接設(shè)置一個(gè)觀察者,以便在異步通信中處理從服務(wù)器返回的負(fù)載數(shù)據(jù)流。

基于上面的問(wèn)題向GPT進(jìn)行提問(wèn)

接下來(lái)的對(duì)話你將以一名 java 高級(jí)開(kāi)發(fā)工程師的身份和我聊天,在 nacos 2.0 版本中的源碼里面為什么這個(gè) set 方法一調(diào)用就往服務(wù)端發(fā)一個(gè)請(qǐng)求,請(qǐng)?jiān)敿?xì)闡述 grpcconn.setPayloadstreamobserver(payloadstream0bserver);

wKgZomaaI4yAFeERAAXQFfxr-mU835.png

wKgaomaaI46AKpgcAA5T_dhyjKc574.png

wKgZomaaI4-AW-MqAAI34yFwCJ8372.png

總結(jié)

1.源碼閱讀準(zhǔn)備:在開(kāi)始閱讀源碼之前,確保對(duì) Java 語(yǔ)言有足夠的了解,熟悉常用的設(shè)計(jì)模式和數(shù)據(jù)結(jié)構(gòu)。對(duì)于 GPT 可以詢問(wèn)一些Java 編程知識(shí)或設(shè)計(jì)模式的問(wèn)題,以幫助更好地理解源碼;

2.提出問(wèn)題:在閱讀源碼時(shí),有針對(duì)性地提出問(wèn)題,例如:詢問(wèn)某個(gè)類或方法的作用、某個(gè)設(shè)計(jì)模式在代碼中的應(yīng)用等。通過(guò)與 GPT 的互動(dòng)了解代碼的功能和結(jié)構(gòu);

3.請(qǐng)求代碼解釋:當(dāng)遇到難以理解的代碼片段時(shí),可以將代碼片段復(fù)制并粘貼到 GPT 中,請(qǐng)求解釋代碼的功能和作用。GPT 可以幫助理解這部分代碼的邏輯和執(zhí)行過(guò)程;

4.代碼重構(gòu)與優(yōu)化:如果覺(jué)得源碼中有可以改進(jìn)的地方,可以請(qǐng)教 GPT 關(guān)于重構(gòu)和優(yōu)化的建議。GPT 可以提供一些實(shí)用的代碼優(yōu)化建議,幫助提高代碼質(zhì)量;

5.編寫(xiě)測(cè)試用例:為了確保源碼的穩(wěn)定性和可靠性,可以請(qǐng)教 GPT 如何編寫(xiě)針對(duì)特定功能的測(cè)試用例。GPT 可以提供測(cè)試用例的示例和建議,幫助編寫(xiě)有效的測(cè)試;

6.學(xué)習(xí)新技術(shù):當(dāng)在閱讀源碼時(shí),可能會(huì)遇到一些不熟悉的技術(shù)和框架。在這種情況下,可以向 GPT 咨詢相關(guān)技術(shù)的使用方法和最佳實(shí)踐,以便更好地理解和應(yīng)用這些技術(shù);

7.問(wèn)題總結(jié)與反饋:在源碼學(xué)習(xí)過(guò)程中,整理遇到的問(wèn)題和疑惑,并向 GPT 進(jìn)行反饋。GPT 可以幫助總結(jié)這些問(wèn)題的解決方案,鞏固在源碼學(xué)習(xí)過(guò)程中的收獲。

?

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • ChatGPT
    +關(guān)注

    關(guān)注

    28

    文章

    1523

    瀏覽量

    7246
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    【國(guó)產(chǎn)FPGA+OMAPL138開(kāi)發(fā)板體驗(yàn)】(原創(chuàng))6.FPGA連接ChatGPT 4

    OMAP-L138(定點(diǎn)/浮點(diǎn)DSP C674x+ARM9)+ FPGA處理器的開(kāi)發(fā)板。 編寫(xiě)一個(gè)用于FPGA訪問(wèn)ChatGPT 4的程序代碼是一個(gè)相當(dāng)復(fù)雜的任務(wù),涉及到硬件設(shè)計(jì)、網(wǎng)絡(luò)通信、數(shù)據(jù)處理等多個(gè)
    發(fā)表于 02-14 21:58

    在FPGA設(shè)計(jì)中是否可以應(yīng)用ChatGPT生成想要的程序呢

    當(dāng)下AI人工智能崛起,很多開(kāi)發(fā)領(lǐng)域都可看到ChatGPT的身影,F(xiàn)PGA設(shè)計(jì)中,是否也可以用ChatGPT輔助設(shè)計(jì)呢?
    發(fā)表于 03-28 23:41

    ChatGPT對(duì)話語(yǔ)音識(shí)別

    ChatGPT
    YS YYDS
    發(fā)布于 :2023年05月30日 22:13:10

    關(guān)于UPSD3234A芯片的程序開(kāi)發(fā)問(wèn)

    各位大神,關(guān)于uPSD3234芯片的開(kāi)發(fā)問(wèn)題,我使用的是80pin的芯片,有外部存儲(chǔ)器接口,其內(nèi)部也有主Flash和次Flash,使用Keil開(kāi)發(fā),我按照51程序?qū)1和P3進(jìn)行配置,下載到芯片的次
    發(fā)表于 11-25 13:34

    科技大廠競(jìng)逐AIGC,中國(guó)的ChatGPT在哪?

    來(lái)看,國(guó)內(nèi)大模型開(kāi)發(fā)廠商一是布局以大模型為基礎(chǔ)的通用對(duì)話、生成等能力;二是將其能力整合到搜索引擎、智能客服、智能音箱等產(chǎn)品線中;三是通過(guò)能力調(diào)用為中小企業(yè)滿足具體場(chǎng)景落地需求?!倍瓡燥w說(shuō)。 隨著ChatGPT
    發(fā)表于 03-03 14:28

    ChatGPT系統(tǒng)開(kāi)發(fā)AI人功智能方案

    。ChatGPT是一個(gè)由OpenAI開(kāi)發(fā)的人工智能語(yǔ)言模型,可以實(shí)現(xiàn)自然語(yǔ)言處理、對(duì)話生成等功能。要開(kāi)發(fā)一個(gè)類似ChatGPT的人工智能系統(tǒng)軟件,可以遵循以下步驟:確定應(yīng)用場(chǎng)景:確定人
    發(fā)表于 05-18 10:16

    不到1分鐘開(kāi)發(fā)一個(gè)GPT應(yīng)用!各路大神瘋狂整活,網(wǎng)友:ChatGPT就是新iPhone

    的能力仍然是不可替代的。 此外,ChatGPT等語(yǔ)言模型的應(yīng)用也需要大量的數(shù)據(jù)和算力支持,以及專業(yè)的技術(shù)人員進(jìn)行開(kāi)發(fā)和維護(hù)。因此,雖然ChatGPT等語(yǔ)言模型在某些方面具有一定的優(yōu)勢(shì),但它們并不能完全取代
    發(fā)表于 11-19 12:06

    WinCE 驅(qū)動(dòng)開(kāi)發(fā)問(wèn)題精華集錦

    WinCE 驅(qū)動(dòng)開(kāi)發(fā)問(wèn)題精華集錦:在mediaplayer 全屏播放的時(shí)候,我可以用鍵盤(pán)上的某一個(gè)鍵調(diào)節(jié)聲音大小,現(xiàn)在我想在屏幕上顯示調(diào)節(jié)的結(jié)果就跟我們看電視一樣能出來(lái)一些標(biāo)記。當(dāng)聲音
    發(fā)表于 09-28 12:19 ?46次下載

    如何動(dòng)手開(kāi)發(fā)chatGPT微信小程序

    導(dǎo)讀 |?上周OpenAI發(fā)布了對(duì)話語(yǔ)言模型 ChatGPT,相關(guān)討論引爆全網(wǎng)。你是否也迫不及待體驗(yàn)一番?本文特邀作者騰訊云開(kāi)發(fā)者社區(qū)作者戴傳友從開(kāi)發(fā)環(huán)境準(zhǔn)備、開(kāi)發(fā)過(guò)程、服務(wù)器接口、騰
    發(fā)表于 02-14 10:02 ?7次下載
    如何動(dòng)手<b class='flag-5'>開(kāi)發(fā)</b><b class='flag-5'>chatGPT</b>微信小程序

    ChatGPT for SegmentFault 插件來(lái)襲 ChatGPT for SegmentFault 插件使用方案解讀

    機(jī)器人插件,可以幫助開(kāi)發(fā)者快速構(gòu)建聊天機(jī)器人應(yīng)用。下文小編會(huì)給大家分享一下ChatGPT for SegmentFault 插件使用方案解讀。 ChatGPT for SegmentFault 是一個(gè)
    的頭像 發(fā)表于 02-16 18:45 ?2883次閱讀

    ChatGPT/GPT的原理 ChatGPT的技術(shù)架構(gòu)

    ChatGPT 是基于GPT-3.5(Generative Pre-trained Transformer 3.5)架構(gòu)開(kāi)發(fā)的對(duì)話AI模型,是InstructGPT 的兄弟模型。 ChatGPT很可能是OpenAI 在GPT-4
    發(fā)表于 02-24 10:05 ?1748次閱讀

    ChatGPT原理 ChatGPT模型訓(xùn)練 chatgpt注冊(cè)流程相關(guān)簡(jiǎn)介

    ChatGPT注冊(cè)沒(méi)有外國(guó)手機(jī)號(hào)驗(yàn)證怎么辦? ChatGPT作為近期火爆網(wǎng)絡(luò)的AI項(xiàng)目,受到了前所未有的關(guān)注。我們可以與AI機(jī)器人實(shí)時(shí)聊天,獲得問(wèn)題的答案。但受ChatGPT服務(wù)器及相關(guān)政策
    的頭像 發(fā)表于 12-06 16:28 ?780次閱讀
    <b class='flag-5'>ChatGPT</b>原理 <b class='flag-5'>ChatGPT</b>模型訓(xùn)練 <b class='flag-5'>chatgpt</b>注冊(cè)流程相關(guān)簡(jiǎn)介