2015-05-09 6 views
1
-- Formatting purpose 
SET LINESIZE 200 
COLUMN 'Pharmaceutical Companies' FORMAT a25 
COLUMN 'Drug Count' FORMAT a10 

-- Code 
SELECT PHARNAME AS "Pharmaceutical Companies", COUNT (tradename) AS "Drug Count" 
FROM DRUG 
GROUP BY PHARNAME 
HAVING COUNT (TRADENAME) = (SELECT MAX ("Drug Count") 
FROM (SELECT COUNT (TRADENAME) AS "Drug Count" FROM DRUG 
GROUP BY PHARNAME)); 

Это мой набор кодов для получения определенных значений из моей базы данных. Тем не менее, результаты отпечатанные являютсяЧто приводит к тому, что мои значения печатаются как #

Pharmaceutical Companies Drug Count 
------------------------- ---------- 
Medmed Shine    ########## 

Если я удалить цель форматирования, он будет показывать

Pharmaceutical Companies  Drug Count 
------------------------------ ---------- 
Medmed Shine       14 

Я попытался регулировать размер формата, но он по-прежнему отображается как ########

+1

Почему вы пытаетесь использовать формат текстового поля - A10 - для ряда? Как вы хотите, чтобы числовое значение отображалось? (Кроме того, [см. Это] (http://docs.oracle.com/cd/E11882_01/server.112/e16604/ch_twelve013.htm#sthref1308)). –

+0

'A ...' неправильный формат, вам нужно '9999999999' ([ссылка] (http://docs.oracle.com/cd/B19306_01/server.102/b14357/ch12013.htm#BACHCABF)) – dasblinkenlight

+0

@AlexPoole новый для sql, не знал, что 'a10' ​​для строки только, спасибо за руководство – Zac

ответ

0

aXXX форматов столбцов как текст, но вы печатаете цифры. Вы можете использовать 9 с для форматирования столбца в виде числа, которое также позволяет использовать запятые для разделения тысяч:

SET LINESIZE 200 
COLUMN 'Pharmaceutical Companies' FORMAT a25 
COLUMN 'Drug Count' FORMAT 999,999,999,999 
+0

спасибо, извините, я не знал об этом, я очень новичок в sql на момент и был только обучен использованием 'a10' ​​для форматирования, но я не знал, что это было только для строки – Zac

Смежные вопросы