用SQL實現99乘法表
今天和同事聊天,同事提到了用SQL實現99乘法表。當時我覺得應該很簡單,於是嘗試了一下,結果這麼簡單的SQL居然用了10分鐘才搞定。
SQL實現如下:
SQL> COL A FORMAT A6
SQL> COL B FORMAT A6
SQL> COL C FORMAT A6
SQL> COL D FORMAT A6
SQL> COL E FORMAT A6
SQL> COL F FORMAT A6
SQL> COL G FORMAT A6
SQL> COL H FORMAT A6
SQL> COL I FORMAT A6
SQL> WITH
2 NUMS AS (SELECT ROWNUM NUM FROM DUAL CONNECT BY LEVEL < 10)
3 SELECT
4 MAX(DECODE(A, 1, EXP)) A,
5 MAX(DECODE(A, 2, EXP)) B,
6 MAX(DECODE(A, 3, EXP)) C,
7 MAX(DECODE(A, 4, EXP)) D,
8 MAX(DECODE(A, 5, EXP)) E,
9 MAX(DECODE(A, 6, EXP)) F,
10 MAX(DECODE(A, 7, EXP)) G,
11 MAX(DECODE(A, 8, EXP)) H,
12 MAX(DECODE(A, 9, EXP)) I
13 FROM
14 (
15 SELECT
16 A.NUM A,
17 B.NUM B,
18 A.NUM || '*' || B.NUM || '=' || A.NUM * B.NUM EXP
19 FROM
20 NUMS A,
21 NUMS B
22 WHERE A.NUM <= B.NUM
23 )
24 GROUP BY B;
A B C D E F G H I
------ ------ ------ ------ ------ ------ ------ ------ ------
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
9 rows selected.
這個SQL就是透過一個構造和一個標準行列轉換組成,就不多解釋了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-101097/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 列印99乘法表
- 用js實現列印九九乘法表JS
- c#列印99乘法表C#
- SQL乘法表SQL
- 一句SQL實現輸出九九乘法表SQL
- 如何用python輸出99乘法表Python
- python 99乘法表,佔位基礎複習Python
- 用pandas實現SQL功能SQL
- Python 6種列印99乘法表的方法詳解!Python
- 用sql實現的n王后SQL
- 用SQL實現Farey數列SQL
- 【轉載】—— SQL寫的9×9乘法表SQL
- 一條SQL生成九九乘法表SQL
- 用SQL實現撲克牌排序SQL排序
- sql 99 語法SQL
- Cursors and SQL Areas (99)SQL
- Java中利用迴圈來實現階乘、99乘法表、水仙花數、成績的接收和迴圈的小遊戲的案例Java遊戲
- js實現字母+5位數的編號,滿99999自動變字母JS
- 11,javase程式碼實戰-迴圈控制——for迴圈實現九九乘法表(二)Java
- oracle資料庫用sql實現快速分頁Oracle資料庫SQL
- 全面升級實用配置 OPPO R7s現貨售2599
- 學習筆記----一句SQL語句寫個乘法表筆記SQL
- SQL SERVER實用技巧SQLServer
- AWR TOP SQL實現SQL
- 最大個人直播平臺Twitch如何實現99.99%高可用性?
- 用VB和SQL Server實現檔案上傳(方案例)SQLServer
- Python列印乘法表Python
- 順展BOM實用SQLSQL
- 實用的SQL語句~!SQL
- Lumen 實現 SQL 監聽SQL
- SQL實現分組limitSQLMIT
- Kafka - SQL 程式碼實現KafkaSQL
- Kettle實現動態SQLSQL
- sql實現行轉列SQL
- 9*9乘法口決pl/sql的多種方法實現(pl/sql實現)SQL
- 實用指紋識別 華為榮耀7官網報價1999元
- 解Bug之路-應用999線升高
- c#實現用SQL池(多執行緒),定時批量執行SQL語句 (轉)C#SQL執行緒