❶ T-sql語句列印九九乘法表
declare @d int,@kk varchar(500),@c int
select @d=1
select @c=1
select @kk=''
while @d<=9
begin
select @c=1
while @c<=@d
begin
select @kk=@kk+char(10)+convert(varchar(200),@c)+'*'+convert(varchar(200),@d)+'='+convert(varchar(200),@d*@c)
select @c=@c+1
end
select @kk=@kk+char(10)
select @d=@d+1
end
print @kk
❷ 用T-SQL語句怎樣實現列印九九乘法表
使用T-SQL語句列印九九乘法表的代碼如下:
--定義三個變數(行、列、輸出字元串)通過橫豎九行九列進行循環輸出
DECLARE@asmallint,@bsmallint,@strvarchar(1000)
set@a=1
WHILE@a<=9
BEGIN
SET@b=1
SET@str=''
WHILE@b<=@a
BEGIN
SELECT@str=@str+convert(varchar(1),@b)+'*'+convert(varchar(1),@a)+'='+convert(char(2),@a*@b)+space(2)
SET@b=@b+1
END
PRINT@str
SET@a=@a+1
(2)sql99乘法表擴展閱讀:
T-SQL語句
T-SQL 即 Transact-SQL,是 SQL 在 Microsoft SQL Server 上的增強版,它是用來讓應用程序與 SQL Server 溝通的主要語言。T-SQL 提供標准 SQL 的 DDL 和 DML 功能,加上延伸的函數、系統預存程序以及程式設計結構(例如 IF 和 WHILE)讓程式設計更有彈性。
❸ sql中pring輸出後怎麼才能不換行 想列印99乘法表
這個沒辦法不換行,不過可以通過另一種方式實現,你可以試試,就是聲明一個varchar的變數,在輸出每一行的時候在本行信息不完整時先將字元信息都存儲在這個變數中,等達到本行輸出條件時,再執行print命令輸出這個變數中的內容,之後再清空用來存放下一行的數據
❹ 如何用sql語言實現九九乘法表 要下三角格式的。
DECLARE@TTint,@NNint,@SSvarchar(60)
SET@TT=9
PRINT'*123456789'
WHILE@TT>=1
BEGIN
SET@SS=STR(@TT,1)+SPACE((9-@TT)*4)
SET@NN=10-@TT
WHILE@NN<=9
BEGIN
SET@SS=@SS+STR(@TT*@NN,4)
SET@NN=@NN+1
END
PRINT@SS
SET@TT=@TT-1
END
❺ 用SQL語句列印九乘九法
SQL語句只是進入資料庫,讀取資料庫,修改資料庫。。
你要列印99乘法表,先得把乘法表做好,然後SQL讀取出來。
❻ 用sql server 做九九乘法表,該怎樣做
declare @i int
declare @j int
declare @str varchar(max)
set @i=1
set @str=''
while @i<=9
begin
set @j=1
while @j<=@i
begin
set @str=@str+cast(@j as varchar)+'*'+cast(@i as varchar)+'='+cast(@i*@j as varchar)+' '
set @j=@j+1
end
set @str=@str+char(10)+char(13)
set @i=@i+1
end
print @str
❼ 用pl/sql 輸出九九乘法表
經過測試,可以直接使用
第一、在Oracle9i下的腳本:
SELECTto_char(flag)||'=1*'||to_char(flag)"1",
CASEWHENflag>1THENto_char(flag*2)||'=2*'||to_char(flag)ELSE''END"2",
CASEWHENflag>2THENto_char(flag*3)||'=3*'||to_char(flag)ELSE''END"3",
CASEWHENflag>3THENto_char(flag*4)||'=4*'||to_char(flag)ELSE''END"4",
CASEWHENflag>4THENto_char(flag*5)||'=5*'||to_char(flag)ELSE''END"5",
CASEWHENflag>5THENto_char(flag*6)||'=6*'||to_char(flag)ELSE''END"6",
CASEWHENflag>6THENto_char(flag*7)||'=7*'||to_char(flag)ELSE''END"7",
CASEWHENflag>7THENto_char(flag*8)||'=8*'||to_char(flag)ELSE''END"8",
CASEWHENflag>8THENto_char(flag*9)||'=9*'||to_char(flag)ELSE''END"9"
FROM(
SELECT1flagFROMal
UNIONALL
SELECT2FROMal
UNIONALL
SELECT3FROMal
UNIONALL
SELECT4FROMal
UNIONALL
SELECT5FROMal
UNIONALL
SELECT6FROMal
UNIONALL
SELECT7FROMal
UNIONALL
SELECT8FROMal
UNIONALL
SELECT9FROMal)a
二、在sqlserver下腳本:
selectconvert(varchar(10),flag)+'=1*'+convert(varchar(10),flag)[1],
casewhenflag>1thenconvert(varchar(10),flag*2)+'=2*'+convert(varchar(10),flag)else''end[2],
casewhenflag>2thenconvert(varchar(10),flag*3)+'=3*'+convert(varchar(10),flag)else''end[3],
casewhenflag>3thenconvert(varchar(10),flag*4)+'=4*'+convert(varchar(10),flag)else''end[4],
casewhenflag>4thenconvert(varchar(10),flag*5)+'=5*'+convert(varchar(10),flag)else''end[5],
casewhenflag>5thenconvert(varchar(10),flag*6)+'=6*'+convert(varchar(10),flag)else''end[6],
casewhenflag>6thenconvert(varchar(10),flag*7)+'=7*'+convert(varchar(10),flag)else''end[7],
casewhenflag>7thenconvert(varchar(10),flag*8)+'=8*'+convert(varchar(10),flag)else''end[8],
casewhenflag>8thenconvert(varchar(10),flag*9)+'=9*'+convert(varchar(10),flag)else''end[9]
from
(select1flag
unionall
select2
unionall
select3
unionall
select4
unionall
select5
unionall
select6
unionall
select7
unionall
select8
unionall
select9)a
❽ 用sql輸出倒置的99乘法表
declare@resultvarchar(max)='',@tempchar(10)
declare@iasint=9,@jasint=1;
while(@i>=1)
begin
while(@j<=@i)
begin
set@temp=STR(@i,1)+'*'+STR(@j,1)+'='+STR(@i*@j,2);
set@result=@result+@temp;
set@j=@j+1;
end
set@result=@result+CHAR(10)
set@i=@i-1
set@j=1
end
print@result
這個是SQL SERVER的寫法,如果是其他資料庫,大體上應該也都差不多,試試看吧。
❾ 資料庫編程做九九乘法表
語言種類太多了,所有語言都可以寫出乘法表
SQL寫99乘法表
1:
select r1 || '*' || 1 || '=' || r1 * 1 A,
decode(r2, '', '', r2 || '*' || 2 || '=' || r2 * 2) b,
decode(r3, '', '', r3 || '*' || 3 || '=' || r3 * 3) C,
decode(r4, '', '', r4 || '*' || 4 || '=' || r4 * 4) D,
decode(r5, '', '', r5 || '*' || 5 || '=' || r5 * 5) E,
decode(r6, '', '', r6 || '*' || 6 || '=' || r6 * 6) F,
decode(r7, '', '', r7 || '*' || 7 || '=' || r7 * 7) G,
decode(r8, '', '', r8 || '*' || 8 || '=' || r8 * 8) H,
decode(r9, '', '', r9 || '*' || 9 || '=' || r9 * 9) I
from (select level r1,
lag(level+1, 1) over(order by level) r2,
lag(level+2, 2) over(order by level) r3,
lag(level+3, 3) over(order by level) r4,
lag(level+4, 4) over(order by level) r5,
lag(level+5, 5) over(order by level) r6,
lag(level+6, 6) over(order by level) r7,
lag(level+7, 7) over(order by level) r8,
lag(level+8, 8) over(order by level) r9
from al
connect by level < 10)
2:
select rn, ltrim(max(sys_connect_by_path(proct, ',')), ',') proct
from
(
select rn, proct, min(proct) over(partition by rn) proct_min
,(row_number() over(order by rn, proct)) + (dense_rank() over(order by rn)) numId
from
(
select b.rn, a.rn || '*' || b.rn || '=' || a.rn * b.rn proct
from (select rownum rn from all_objects where rownum <= 9) a,
(select rownum rn from all_objects where rownum <= 9) b
where a.rn <= b.rn
order by b.rn, proct
)
)
start with proct = proct_min
connect by numId - 1 = prior numId
group by rn
❿ sql語句實現四種九九乘法表
下面用while
和
if
條件寫的SQL語句的四種九九乘法表
sql語句實現--x
左下角九九乘法表
DECLARE
@I
INT
,@J
INT,@S
VARCHAR()
SET
@I=
WHILE
@I<
BEGIN
SET
@J=
SET
@S=''
WHILE
@J<=@I
BEGIN
SET
@S=@S+CAST(@J
AS
CHAR())+'*'+CAST(@I
AS
CHAR())+'='+CAST((@I*@J)AS
CHAR())
SET
@J=@J+
END
PRINT
@S
SET
@I=@I+
END
結果:
sql語句實現--X
右下角九九乘法表
DECLARE
@I
INT
,@J
INT,@S
VARCHAR()
SET
@I=
WHILE
@I<
BEGIN
SET
@J=
SET
@S=''
WHILE
@J>
BEGIN
IF
@J>@I
BEGIN
SET
@S=@S+'
'
--七個空格
END
ELSE
BEGIN
SET
@S=@S+CAST(@I
AS
CHAR())+'*'+CAST(@J
AS
CHAR())+'='+CAST((@I*@J)AS
CHAR())
END
SET
@J=@J-
END
PRINT
@S
SET
@I=@I+
END
結果:
sql語句實現--9X9右上角
DECLARE
@I
INT
,@J
INT,@S
VARCHAR(100)
SET
@I=1
WHILE
@I<10
BEGIN
SET
@J=1
SET
@S=''
WHILE
@J<10
BEGIN
IF
@J<@I
BEGIN
SET
@S=@S+'
'--7
END
ELSE
BEGIN
SET
@S=@S+CAST(@I
AS
CHAR(1))+'*'+CAST(@J
AS
CHAR(1))+'='+CAST((@I*@J)AS
CHAR(3))
END
SET
@J=@J+1
END
PRINT
@S
SET
@I=@I+1
END
結果:
sql語句實現--9X9左上角
DECLARE
@I
INT
,@J
INT,@S
VARCHAR(100)
SET
@I=1
WHILE
@I<10
BEGIN
SET
@J=@I
SET
@S=''
WHILE
@J<10
BEGIN
SET
@S=@S+CAST(@I
AS
CHAR(1))+'*'+CAST(@J
AS
CHAR(1))+'='+CAST((@I*@J)AS
CHAR(3))
SET
@J=@J+1
END
PRINT
@S
SET
@I=@I+1
END
結果:
以上內容就是通過四種方式寫的九九乘法表,希望大家喜歡。