新聞中心
Excel的公式自動生成想必大家都知道了,就是寫好一個公式后直接往下拖,就可以將后面數(shù)據(jù)的公式自動生成。

創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、成都網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的興安盟烏蘭浩特網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
今天我們就用這個功能來快速生成SQL語句。
導(dǎo)入Excel數(shù)據(jù)
Excel的數(shù)據(jù)有多種方式,這里我們演示用SQL代碼導(dǎo)入Excel中的數(shù)據(jù)。
例如我們想把左邊Excel中的數(shù)據(jù)插入到數(shù)據(jù)庫中,如下圖:
寫好模板語句
我們可以先寫一條插入語句,如下:
- INSERT INTO Person VALUES(1,'呂布',25,'男','13500000001')
然后復(fù)制這條SQL語句打開Excel,選中表格后的一個單元格,在上方函數(shù)位置粘貼剛才的SQL語句并做修改,
- ="INSERT INTO Person VALUES("&A2&",'"&B2&"',"&C2&",'"&D2&"','"&E2&"')"
注意前面有個= 然后整個SQL用 ""包圍住。
生成SQL語句
確認(rèn)后就可以看到在單元格中會自動生成一條SQL語句。選中單元格下拉,會發(fā)現(xiàn)所有的行后面都會生成一條SQL語句。
執(zhí)行SQL
然后我們直接復(fù)制這些SQL語句到數(shù)據(jù)庫的查詢窗口執(zhí)行。
執(zhí)行完后我們查詢Person表里的數(shù)據(jù)。
這樣就完成了Excel快速生成SQL語句的功能。
擴展SQL示例
以上只是一個簡單的示例,運用這種方法我們還可以自動生成很多其他的SQL腳本,比如要查詢數(shù)據(jù)庫中所有表中的記錄數(shù)。
當(dāng)然我們可以使用循環(huán)遍歷系統(tǒng)中的所有表然后再用循環(huán)語句執(zhí)行指定的語句,如下:
- --使用循環(huán)語句查詢所有表的數(shù)量
- DECLARE
- TNAME VARCHAR2(200);
- BEGIN
- --獲取系統(tǒng)表中的所有表名
- FOR X IN (SELECT TABLE_NAME FROM user_tables where table_name like 'HR_TEMPTABLE%')
- --開始循環(huán)
- LOOP
- --循環(huán)主體部分
- TNAME :=X.TABLE_NAME; --賦值
- EXECUTE IMMEDIATE 'SELECT '''X.TABLE_NAME'''||',COUNT(1) Num FROM '||X.TABLE_NAME; --執(zhí)行循環(huán)主體
- END LOOP;
- EXCEPTION
- WHEN OTHERS THEN
- DBMS_OUTPUT.put_line(TNAME);
- RAISE;
- END;
- END;
套用Excel生成SQL方法
但是如果是新手同學(xué),不會寫上面的代碼,而此時又要我們做這樣的事怎么辦呢?就可以使用上面的方法了。
可以先從系統(tǒng)表中查詢出所有的表名
- SELECT TABLE_NAME FROM user_tables
將表名復(fù)制粘貼到Excel中,然后開始寫查詢語句,如下圖:
然后將這些代碼復(fù)制粘貼到查詢窗口即可查詢出所有表中的記錄數(shù)了。
使用此方法還可以應(yīng)用在很多類似的場景,他們的共同點就是代碼結(jié)構(gòu)一樣,但是代碼中的參數(shù)不一樣,對于想快速寫出相應(yīng)的SQL代碼是非常有效的。
分享題目:如何用Excel快速生成SQL語句,用起來真的很爽
文章轉(zhuǎn)載:http://www.dlmjj.cn/article/dpcodoi.html


咨詢
建站咨詢
