SQL OCT函数
OCT 是一个 SQL 字符串函数,用于将给定的十进制数转换为其八进制等价形式。
OCT 函数的语法
SELECT OCT(Decimal_Number) AS Alias_Name;
在OCT语法中,我们需要传递一个十进制数,找出它的八进制等价数。
在结构化查询语言中,我们还可以使用OCT函数与表格的列一起使用,如下所示的代码块:
SELECT OCT(column_Name) AS Alias_Name FROM Table_Name;
在这个语法中,我们必须定义要执行OCT函数的表的名称和列。
OCT函数的示例
示例1: 这个示例返回指定数字的八进制表示:
SELECT OCT(101) AS octal_of_101;
输出:
octal_of_101
145
示例2: 此示例返回指定数字的八进制表示:
SELECT OCT(2) AS octal_of_2;
输出:
octal_of_2
---
2
示例 3: 此示例返回8的表示形式:
SELECT OCT(8) AS octal_of_8;
输出:
octal_of_8
---
10
示例4: 此示例返回255的八进制表示:
SELECT OCT(255) AS octal_of_255;
输出:
octal_of_255
---
377
示例 5: 该示例返回NULL的八进制表示:
SELECT OCT(NULL) AS octal_of_NULL;
输出:
octal_of_NUL
---
NULL
示例 6: 这个示例返回NULL的八进制表示:
SELECT OCT(21) AS 21, OCT(22) AS 22, OCT(23) AS 23, OCT(24) AS 24, OCT(25) AS 25, OCT(26) AS 26, OCT(27) AS 27, OCT(28) AS 28, OCT(29) AS 29, OCT(30) AS 30;
输出:
21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
---|---|---|---|---|---|---|---|---|---|
25 | 26 | 27 | 30 | 31 | 32 | 33 | 34 | 35 | 36 |
示例 7: 这个示例使用了带有SQL表的OCT函数。
在这个示例中,我们将创建一个新表,通过这个表上的列执行OCT函数:
下面显示了在SQL中创建新表的语法:
CREATE TABLE Name_of_New_Table
(
First_Column_of_table Data Type (character_size of First Column),
Second_Column_of_table Data Type (character_size of the Second column ),
Third_Column_of_table Data Type (character_size of the Third column),
.......,
Last_Column_of_table Data Type (character_size of the Last column)
);
以下CREATE语句创建了用于存储产品价格和数量的 Product_Details 表:
CREATE TABLE Product_Details
(
Product_ID INT NOT NULL,
Product_Name Varchar(50),
Product_Quantity INT,
Purchasing_Price INT,
Selling_Price INT,
Release_Date Date,
Product_Rating INT
);
以下的多个INSERT查询将产品的记录以及它们的销售价格和采购价格插入到Product_Details表中:
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (104, P1, 10.250, 945, NULL, 2022-04-30, NULL);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (202, P4, 15.500, 45, 75, 2022-01-28, 5);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (103, P2, 18.250, 25, NULL, 2022-02-18, 4);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (111, P7, 25.250, 5, 15, 2021-12-25, 9);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (210, P6, 15.500, 50, 70, 2021-10-15, NULL);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (212, P8, 19.750, 110, 250, 2022-01-28, 4);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (112, P10, 10.250, 550, 835, 2022-04-11, NULL);
下面的SELECT语句显示了上述 Product_Details 表中插入的记录:
SELECT * FROM Product_Details;
Product_ID | Product_Name | Product_Quantity | Purchasing_Price | Selling_Price | Release_Date | Product_Rating |
---|---|---|---|---|---|---|
104 | P1 | 10.250 | 945 | NULL | 2022-04-30 | NULL |
202 | P4 | 15.500 | 45 | 75 | 2022-01-28 | 5 |
103 | P2 | 18.250 | 25 | NULL | 2022-02-18 | 4 |
111 | P7 | 25.250 | 5 | 15 | 2021-12-25 | 9 |
210 | P6 | 15.500 | 50 | 70 | 2021-10-15 | NULL |
212 | P8 | 19.750 | 110 | 250 | 2022-01-28 | 4 |
112 | P10 | 10.250 | 550 | 835 | 2022-04-11 | NULL |
查询 1: 下面的 SELECT 查询使用了上述 Product_Details 表的 Product_Quantity 列的 OCT 函数:
SELECT Product_ID, OCT(Product_ID) AS octal_of_Product_ID FROM Product_Details;
这个查询显示每个产品的产品ID的八进制表示。
输出:
Product_ID | octal_of_Product_ID |
---|---|
104 | 150 |
202 | 312 |
103 | 147 |
111 | 157 |
210 | 322 |
212 | 324 |
112 | 160 |
查询2: 下面的SELECT查询使用了上述Product_Details表的Selling_Price列的OCT函数:
SELECT Selling_Price, OCT(Selling_Price) AS octal_of_SellingPrice FROM Product_Details;
此查询显示每个产品的购买价格和销售价格的八进制表示。
输出结果:
Selling_Price | octal_of_SellingPrice |
---|---|
NULL | NULL |
75 | 113 |
NULL | NULL |
15 | 17 |
70 | 106 |
250 | 372 |
835 | 1503 |
查询3: 下面的SELECT查询使用上述Product_Details表的Product_Rating列的OCT函数:
SELECT OCT(Product_Rating) AS octal_of_productrating FROM Product_Details;
此查询显示以上表格中每个产品的八进制表示的评级。
输出:
Product_Rating | octal_of_productrating |
---|---|
NULL | NULL |
5 | 5 |
4 | 4 |
9 | 11 |
NULL | NULL |
4 | 4 |
NULL | NULL |