sql server,九九乘法表
时间: 2023-02-11 21:08:17 浏览: 65
可以使用如下的 SQL 语句来生成 SQL Server 中的九九乘法表:
```
WITH cte (n) AS (
SELECT 1 UNION ALL
SELECT n + 1 FROM cte WHERE n < 9
), cte2 (n, m) AS (
SELECT 1, 1 UNION ALL
SELECT n, m + 1 FROM cte2 WHERE m < 9
)
SELECT n, m, n * m FROM cte2;
```
其中使用了递归 CTE(Common Table Expressions,通用表达式)来生成1-9的数字。
这条语句会生成一个三列的九九乘法表, 第一列是乘数,第二列是被乘数,第三列是积
运行后的结果:
```
n m n*m
1 1 1
1 2 2
1 3 3
...
9 7 63
9 8 72
9 9 81
```
相关问题
sql sever打印九九乘法表
在 SQL Server 中打印九九乘法表可以使用以下代码:
```
DECLARE @i INT = 1, @j INT = 1;
WHILE @i <= 9
BEGIN
WHILE @j <= 9
BEGIN
PRINT CAST(@i AS VARCHAR) + ' * ' + CAST(@j AS VARCHAR) + ' = ' + CAST(@i * @j AS VARCHAR);
SET @j = @j + 1;
END;
SET @i = @i + 1;
SET @j = 1;
PRINT '';
END;
```
以上代码使用了两个 WHILE 循环,分别控制乘法表的行和列,使用 PRINT 命令输出每一个乘法表的式子。注意要将数字转换为字符串类型进行拼接。
mysql 输出九九乘法表
以下是使用MySQL输出九九乘法表的方法:
```sql
SELECT CONCAT_WS(' ', a.num, '*', b.num, '=', a.num * b.num) AS result
FROM
(SELECT 1 AS num UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) AS a
CROSS JOIN
(SELECT 1 AS num UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) AS b
WHERE a.num >= b.num
ORDER BY a.num, b.num;
```
该方法使用了MySQL的SELECT语句和CROSS JOIN语句,首先创建了两个子查询,分别生成1到9的数字序列,然后使用CROSS JOIN将它们组合成一个九九乘法表。最后使用CONCAT_WS函数将结果拼接成字符串,并按照数字大小排序输出。