如何从Oracle SQL中的字符串中选择一定数量的字符?

时间:2017-04-17 18:09:53

标签: oracle

假设我的表中有一个设施列,其数据类型为VARCHAR2(300),如果我调用一个显示此列中记录的查询,并且我没有使用所有300个字符,则所有字符显示用尽了空的空间。

有没有办法可以根据使用的字符数显示结果而不只是显示所有300个字符?

这是我的SQL代码:

    SELECT Depot_Depot_ID AS "Depot ID", facilities FORM BUS;

    THIS IS THE RESULT I GET...

RESULTS IMAGE

感谢。

2 个答案:

答案 0 :(得分:0)

我没有让Oracle测试,但这可能有效

declare maxlen number
SELECT max(LENGTH(TRIM(facilities))) INTO maxlen FROM BUS;

SELECT Depot_Depot_ID AS "Depot ID", cast(facilities as varchar(maxlen)) FORM BUS;

答案 1 :(得分:0)

好的,我找到了我正在寻找的答案。我只使用SELECT CAST(facilities AS CHAR(80)) AS "Facilities" FROM BUS;而不是TRIM或其中任何一个,它只显示来自'设施的前80个字符。柱