Converting Column to Rows
Hello,
I am trying to build and SQL to convert columns from multiple rows to the all rows - see below test data and result expected:
CREATE TABLE XX_TEST(NAME VARCHAR2(10),A1 VARCHAR2(10),A2 VARCHAR2(10), A3 VARCHAR2(10),A4 VARCHAR2(10),A5 VARCHAR2(10));
INSERT INTO XX_TEST VALUES('LIST','A','B','C','D','E');
INSERT INTO XX_TEST VALUES('L1','1',NULL,'3',NULL,NULL);
INSERT INTO XX_TEST VALUES('L2','1','5','4',NULL,NULL);
COMMIT
SELECT * FROM XX_TEST;
Result expected:
NAME is Column from table XX_TEST but COLUMN and VALUE are the columns converted to rows-
NAME COLUMN VALUE
L1 A1 1
L1 A2 NULL
L1 A3 3
L1 A4 NULL
L1 A5 NULL
L2 A1 1
L2 A2 5
L2 A3 4
L2 A4 NULL
L2 A5 NULL
Thanks
BS
Hi,
Thanks for posting the sample data in such a useful form!
Whenever you post a question, you should always say what version of Oracle you're using, too.
Displaying multiple columns from one row as one column on multiple rows is called Unpivoting .
In Oracle 11, you can use the SELECT ... UNPIVOT feature to do that.
In any version of Oracle, you can cross-join your table to a Counter that has as many rows as your original table has columns to be unpivoted.
In this problem, we need a self-join of the unpivoted data, to join the rows with name='LIST' to every other row.
WITH cntr AS
SELECT LEVEL AS n
FROM dual
CONNECT BY LEVEL <= 5
, unpivoted_xx_test AS
SELECT x.name
, 'A' || c.n AS col
, CASE c.n
WHEN 1 THEN x.a1
WHEN 2 THEN x.a2
WHEN 3 THEN x.a3
WHEN 4 THEN x.a4
WHEN 5 THEN x.a5
END AS val
FROM cntr c
CROSS JOIN xx_test x
SELECT u.name
, u.col
, l.val AS val1
, u.val AS val2
FROM unpivoted_xx_test l
JOIN unpivoted_xx_test u ON l.col = u.col
WHERE l.name = 'LIST'
AND u.name != 'LIST'
ORDER BY name
, col
;Output:
NAME COL VAL1 VAL2
L1 A1 A 1
L1 A2 B
L1 A3 C 3
L1 A4 D
L1 A5 E
L2 A1 A 1
L2 A2 B 5
L2 A3 C 4
L2 A4 D
L2 A5 EThe query above uses some features that were new in Oracle 9, but the basic strategy will work in earlier versions.
If your columns don't have such regular names (A1, A2, A3, ...) then you can use another CASE expression to derive unpivoted_xx_test.col.
Similar Messages
-
Convert columns to row equivalent to stragg function in oracle sql
Hi,
Sorry i forgot my Oracle version :
SQL> select * from v$version;
BANNER
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi
PL/SQL Release 10.2.0.3.0 - Production
CORE 10.2.0.3.0 Production
TNS for 64-bit Windows: Version 10.2.0.3.0 - Production
NLSRTL Version 10.2.0.3.0 - ProductionI searched in google but i didn't found the solution.
I looking for a function in discoverer equivalent to stragg sql function.
Note : stragg function convert columns to rows.
Thanks
SELECT deptno, stragg ('-' || ename)
FROM emp_test
GROUP BY deptno;
DEPTNO STRAGG_STR
10 -CLARK-KING-MILLER
20 -SMITH-FORD-ADAMS-SCOTT-JONES
30 -ALLEN-BLAKE-MARTIN-TURNER-JAMES-WARD
3 rows selected.Edited by: Salim Chelabi on 2010-01-29 08:32Hi again,
*1- I created my function in my schema.*
CREATE OR REPLACE TYPE t_string_agg AS OBJECT
g_string VARCHAR2(32767),
STATIC FUNCTION ODCIAggregateInitialize(sctx IN OUT t_string_agg)
RETURN NUMBER,
MEMBER FUNCTION ODCIAggregateIterate(self IN OUT t_string_agg,
value IN VARCHAR2 )
RETURN NUMBER,
MEMBER FUNCTION ODCIAggregateTerminate(self IN t_string_agg,
returnValue OUT VARCHAR2,
flags IN NUMBER)
RETURN NUMBER,
MEMBER FUNCTION ODCIAggregateMerge(self IN OUT t_string_agg,
ctx2 IN t_string_agg)
RETURN NUMBER
SHOW ERRORS
CREATE OR REPLACE TYPE BODY t_string_agg IS
STATIC FUNCTION ODCIAggregateInitialize(sctx IN OUT t_string_agg)
RETURN NUMBER IS
BEGIN
sctx := t_string_agg(NULL);
RETURN ODCIConst.Success;
END;
MEMBER FUNCTION ODCIAggregateIterate(self IN OUT t_string_agg,
value IN VARCHAR2 )
RETURN NUMBER IS
BEGIN
SELF.g_string := self.g_string || ',' || value;
RETURN ODCIConst.Success;
END;
MEMBER FUNCTION ODCIAggregateTerminate(self IN t_string_agg,
returnValue OUT VARCHAR2,
flags IN NUMBER)
RETURN NUMBER IS
BEGIN
returnValue := RTRIM(LTRIM(SELF.g_string, ','), ',');
RETURN ODCIConst.Success;
END;
MEMBER FUNCTION ODCIAggregateMerge(self IN OUT t_string_agg,
ctx2 IN t_string_agg)
RETURN NUMBER IS
BEGIN
SELF.g_string := SELF.g_string || ',' || ctx2.g_string;
RETURN ODCIConst.Success;
END;
END;
SHOW ERRORS
CREATE OR REPLACE FUNCTION string_agg (p_input VARCHAR2)
RETURN VARCHAR2
PARALLEL_ENABLE AGGREGATE USING t_string_agg;
SHOW ERRORS
*2- I ran my query in my schema with sqlplus.*
SELECT deptno,ename,sal, string_agg(ename)over(partition by deptno) AS employees
FROM emp_test
order by deptno;
DEPTNO ENAME SAL EMPLOYEES
10 CLARK 2450 CLARK,KING,MILLER
10 KING 5000 CLARK,KING,MILLER
10 MILLER 1300 CLARK,KING,MILLER
20 JONES 2975 JONES,FORD,ADAMS,SMITH,SCOTT
20 FORD 3000 JONES,FORD,ADAMS,SMITH,SCOTT
20 ADAMS 1100 JONES,FORD,ADAMS,SMITH,SCOTT
20 SMITH 800 JONES,FORD,ADAMS,SMITH,SCOTT
20 SCOTT 3000 JONES,FORD,ADAMS,SMITH,SCOTT
30 WARD 1250 WARD,TURNER,ALLEN,JAMES,BLAKE,MARTIN
30 TURNER 1500 WARD,TURNER,ALLEN,JAMES,BLAKE,MARTIN
30 ALLEN 1600 WARD,TURNER,ALLEN,JAMES,BLAKE,MARTIN
30 JAMES 950 WARD,TURNER,ALLEN,JAMES,BLAKE,MARTIN
30 BLAKE 2850 WARD,TURNER,ALLEN,JAMES,BLAKE,MARTIN
30 MARTIN 1250 WARD,TURNER,ALLEN,JAMES,BLAKE,MARTIN
14 rows selected.
*3- I import this function in discoverer administration*
4- My problem :When i use the function string_agg(ename)over(partition by deptno) in discover deskto i got the error you can't use over in this place.
Any ideas.
Thank in advance.
Regards Salim. -
Hi All,
I need help in building view which actually can show columns data as row.
e.g.
row is as follows
Name Age Salary
ABC 25 10000
BBC 28 12000
The above tables data I want to get as
Name ABC BBC
Age 25 28
Salary 10000 12000
Thanks in advance.Even if I don't really understand such requirement, I wrote some times ago such function to play around that :
Re: Converting Columns into rows
Nicolas. -
Need help with query for converting columns to rows
Hello,
I know this is a very common question asked in the forum. I have searched regading this, i did find some threads, but i was not able to achieve what i require from the answers posted. So anybody please help me.
I have a table which is having multiple columns as follows:
Insert into table_1 (X,Y,Z,A,B,C,D,E,F,G,H,I) values (0,0,2,0,0,1,3,0,0,0,0,0);I want to convert the result into a two column, multiple rows i.e., I want the result as follows:
Col1 Col2
X 0
Y 0
Z 2
A 0
B 0
C 1
D 3
E 0
F 0
G 0
H 0
I 0Please anybody help me in writing the query for this..Is this what you are expecting:
SQL> WITH T AS
2 (
3 SELECT 0 X, 0 Y, 2 Z, 0 A, 0 B, 1 C, 3 D, 0 E, 0 F, 0 G, 0 H, 0 I FROM DUAL
4 )
5 SELECT 'X' col1, X col2 FROM T
6 UNION ALL
7 SELECT 'Y' col1, Y col2 FROM T
8 UNION ALL
9 SELECT 'Z' col1, Z col2 FROM T
10 UNION ALL
11 SELECT 'A' col1, A col2 FROM T
12 UNION ALL
13 SELECT 'B' col1, B col2 FROM T
14 UNION ALL
15 SELECT 'C' col1, C col2 FROM T
16 UNION ALL
17 SELECT 'D' col1, D col2 FROM T
18 UNION ALL
19 SELECT 'E' col1, E col2 FROM T
20 UNION ALL
21 SELECT 'F' col1, F col2 FROM T
22 UNION ALL
23 SELECT 'G' col1, G col2 FROM T
24 UNION ALL
25 SELECT 'H' col1, H col2 FROM T
26 UNION ALL
27 SELECT 'I' col1, I col2 FROM T
28 /
C COL2
X 0
Y 0
Z 2
A 0
B 0
C 1
D 3
E 0
F 0
G 0
H 0
C COL2
I 0
12 rows selected. -
How to convert column to row in 10g and calculate the count
876602 wrote:
Hi ,
i need to convert the column to row in my DB 10g , i cant use the Decode method because i have about 2000 items in MDN column
this is sample of my date ,
MDN Date
5C4CA98EABA3 20111205235240
5C4CA98EABA3 20110925121833
5C4CA98EABB0 20111025103700
5C4CA98EABB0 20111124103700
5C4CA98EABB5 20111030175717
5C4CA98EABB8 20110925142653
5C4CA98EABB8 20111126175853i need the result to be ,
MDN Date count
5C4CA98EABA3 20111205235240 ; 20110925121833 2
5C4CA98EABB0 20111025103700 ; 20111124103700 2
5C4CA98EABB5 20111030175717 1
5C4CA98EABB8 20110925142653 ; 20111126175853 2any help please ,
Edited by: 876602 on 15/12/2011 01:33 صSQL> with t as
2 (
3 select '5C4CA98EABA3' MDN ,'20111205235240' Dte from dual
4 union all
5 select '5C4CA98EABA3','20110925121833' from dual
6 union all
7 select '5C4CA98EABB0','20111025103700' from dual
8 union all
9 select '5C4CA98EABB0','20111124103700' from dual
10 union all
11 select '5C4CA98EABB5','20111030175717' from dual
12 union all
13 select '5C4CA98EABB8','20110925142653' from dual
14 union all
15 select '5C4CA98EABB8','20111126175853' from dual
16 )
17 select mdn,ltrim(sys_connect_by_path(dte,';'),';') s,rw as "count"
18 from
19 (
20 select mdn,dte,row_number() over(partition by mdn order by mdn) rw
21 from t
22 )
23 where connect_by_isleaf = 1
24 start with rw = 1
25 connect by prior rw = rw-1
26 and prior mdn = mdn
27 ;
MDN S count
5C4CA98EABA3 20111205235240;20110925121833 2
5C4CA98EABB0 20111025103700;20111124103700 2
5C4CA98EABB5 20111030175717 1
5C4CA98EABB8 20110925142653;20111126175853 2 -
How to convert column to row in 10g
Hi ,
i need to convert the column to row in my DB 10g , i cant use the Decode method because i have about 2000 items in MDN column
this is sample of my date ,
MDN Date
5C4CA98EABA3 20111205235240
5C4CA98EABA3 20110925121833
5C4CA98EABB0 20111025103700
5C4CA98EABB0 20111124103700
5C4CA98EABB5 20111030175717
5C4CA98EABB8 20110925142653
5C4CA98EABB8 20111126175853i need the result to be ,
MDN Date
5C4CA98EABA3 20111205235240 ; 20110925121833
5C4CA98EABB0 20111025103700 ; 20111124103700
5C4CA98EABB5 20111030175717
5C4CA98EABB8 20110925142653 ; 20111126175853any help please ,
Edited by: 876602 on 15/12/2011 01:33 صNote the name of this forum is "SQL Developer *(Not for general SQL/PLSQL questions)*", so only for issues with the SQL Developer tool. Please post these questions under the dedicated {forum:id=75} forum.
Regards,
K. -
How to convert columns to rows
I have 70 columns and I need to convert them into rows. Please help!
Currently, it is showing as listed below
message 1 message 2 message 3 message 4 message 5 .......... message 70
system 1 20 10 40 60 100
system 2 40 30 50 80 110
system 3 60 60 70 90 120
The desire output
system 1 system 2 system 3
message 1 20 40 60
message 2 10 30 60
message 3 40 50 70
message 70Something like...
SQL> ed
Wrote file afiedt.buf
1 select decode(rn,1,'Empno :'||empno
2 ,2,'Ename ('||empno||') :'||ename
3 ,3,'Job ('||empno||') :'||job
4 ) as col
5 from emp
6 cross join (select rownum rn from dual connect by rownum <= 3)
7* order by empno, rn
SQL> /
COL
Empno :7369
Ename (7369) :SMITH
Job (7369) :CLERK
Empno :7499
Ename (7499) :ALLEN
Job (7499) :SALESMAN
Empno :7521
Ename (7521) :WARD
Job (7521) :SALESMAN
Empno :7566
Ename (7566) :JONES
Job (7566) :MANAGER
Empno :7654
Ename (7654) :MARTIN
Job (7654) :SALESMAN
Empno :7698
Ename (7698) :BLAKE
Job (7698) :MANAGER
Empno :7782
Ename (7782) :CLARK
Job (7782) :MANAGER
Empno :7788
Ename (7788) :SCOTT
Job (7788) :ANALYST
Empno :7839
Ename (7839) :KING
Job (7839) :PRESIDENT
Empno :7844
Ename (7844) :TURNER
Job (7844) :SALESMAN
Empno :7876
Ename (7876) :ADAMS
Job (7876) :CLERK
Empno :7900
Ename (7900) :JAMES
Job (7900) :CLERK
Empno :7902
Ename (7902) :FORD
Job (7902) :ANALYST
Empno :7934
Ename (7934) :MILLER
Job (7934) :CLERK
42 rows selected. -
Hi,
I have 6 columns and 4 rows and i want to convert it into 6 rows and 4 columns and want to display in table control.
plz help me in this ....Hi Kinjal,
Question is not clear. You want to change the internal table values with 6 columns & 4 rows to 4 columns & 6 rows?
If my understanding is correct, check the bleow logic:
loop at itab1.
case sy-tabix.
when 1.
itab2-c1 = itab1-c1.
append itab2.
itab2-c1 = itab1-c2.
append itab2.
itab2-c1 = itab1-c3.
append itab2.
itab2-c1 = itab1-c4.
append itab2.
itab2-c1 = itab1-c5.
append itab2.
itab2-c1 = itab1-c6.
append itab2.
when 2.
itab2-c2 = itab1-c1.
modify itab2 transporting c2 index 1.
itab2-c2 = itab1-c2.
modify itab2 transporting c2 index 2.
itab2-c2 = itab1-c3.
modify itab2 transporting c2 index 3.
itab2-c2 = itab1-c4.
modify itab2 transporting c2 index 4.
itab2-c2 = itab1-c5.
modify itab2 transporting c2 index 5.
itab2-c2 = itab1-c6.
modify itab2 transporting c2 index 6.
when 3.
itab2-c3 = itab1-c1.
modify itab2 transporting c3 index 1.
when 4.
itab2-c4 = itab1-c1.
modify itab2 transporting c4 index 1.
Endloop.
Finally you will get 6 rows with 4 coulmns. -
Dear all....I need to convert all columns into rows in a table. For example table has following columns:
Emp_Cod........Val1......Val2......Val3
1 a b c
Now I wish that each column should display as a value like:
Emp_Cod........Val1
1 a
1 b
1 c
Now the one way to solve this job is to write a union statement for each column but for this I'll have to write equal number of select statements as there are columns.
What I need that is there anyway to write minimum code for this job, is there any alternate way???SQL> with t as(select 1 emp_code, 'a' val1, 'b' val2, 'c' val3 from dual)
2 select*from t unpivot(v for c in(val1,val2,val3));
EMP_CODE C V
1 VAL1 a
1 VAL2 b
1 VAL3 c
SQL> col COLUMN_VALUE for a20
SQL> with t as(select 1 emp_code, 'a' val1, 'b' val2, 'c' val3 from dual)
2 select*from t,table(sys.odcivarchar2list(val1,val2,val3));
EMP_CODE V V V COLUMN_VALUE
1 a b c a
1 a b c b
1 a b c c -
How to convert columns into rows using transpose function
Hi
anybody tell me how to convert columns values into rows using transpose function.Since BluShadow went to all the trouble to put it together, someone should use it.
See the post titled How do I convert rows to columns? here SQL and PL/SQL FAQ
John -
Reformatting Table- convert columns to rows
Hi,
I have data tables that I would like to reformat so that the columns become rows and vice versa, if that is possible.
I've been keyword searching for hours, but unfortunately I am unfamiliar with the terminology... Sorry if this is really stupid; I'd appreciate any help! Thanks!Bev Kehoe wrote:
After calling Apple Tech support & having the tech head tell me 'transpose' only works on charts, we found you!
One more techie which doen't know what he respond about. The transpose function is not as efficient as we where hoping but it works.
Alas, the formulas are so weird that I thougt that the "transpose_live script is a better tool.
I was not able to find a 'menu' script within numbers but opened it on its own and it worked. Is there a way to have it be a choice within numbers itself?
The "Script menu" is a menu of its own.
If you apply what I described at the beginning of the script, you will have an area dedicated to Numbers.
We may organize the menu two ways:
Yvan KOENIG (from FRANCE lundi 29 juin 2009 16:57:49) -
Converting Columns to rows in Oracle 10g
Hi
i need hint to convert rows to columns.i had given the data strucure and expected output
Source Table
BU_ID Prod_id total_clients Tot_men Totwomen
101 AAA 85 50 35
101 BBB 40 20 20Expected Output
BU_ID Prod_id Clint_info Values
101 AAA total_clients 85
101 AAA Tot_men 50
101 AAA totwomen 35
101 BBB total_clients 40
101 BBB tot_men 20
101 BBB totwomen 20Thanks
Edited by: Sami on Aug 1, 2012 8:25 PMHi,
Cross-join your table with a Counter Table , a table (or result set, as in the example below) that counts from 1 up to the number of columns you want to unpivot, like this:
WITH cntr AS
SELECT LEVEL AS n
FROM dual
CONNECT BY LEVEL <= 3 -- Number of columns to be unpivoted
SELECT s.bu_id
, s.prod_id
, CASE c.n
WHEN 1 THEN 'total_clients'
WHEN 2 THEN 'total_men'
WHEN 3 THEN 'total_women'
END AS client_info
, CASE c.n
WHEN 1 THEN total_clients
WHEN 2 THEN total_men
WHEN 3 THEN total_women
END AS values
FROM source_table s
CROSS JOIN cntr c
ORDER BY s.bu_id
, s.prod_id
, c.n
;If you'd care to post CREATE TABLE and INSERT statements for your sample data, then I could test this.
The values column that you create can only have 1 data type. If the original, unpivoted columns have different data types, you may need to convert some of them in the CASE expression that defines values. -
Hi,
I have the following structure :
4 keys followed by 94 data columns.
Ex: A B C D 1 2 3 4 ....
and I would like to convert it into
A B C D sy-datum 1
A B C D sy-datum-1 2
Can anyone help me with the code.
thanks
amitHi,
I tried this 4 keys and additional three fields..It worked..
DATA: BEGIN OF S_STRUC,
KEY1,
KEY2,
KEY3,
KEY4,
FIRST TYPE CHAR10 VALUE 'FIRST',
SECOND TYPE CHAR10 VALUE 'SECOND',
THRIRD TYPE CHAR10 VALUE 'THIRD',
END OF S_STRUC.
DATA: ITAB LIKE S_STRUC OCCURS 0 WITH HEADER LINE.
DATA: V_INT TYPE INT4.
FIELD-SYMBOLS: <FS>, <FS1>.
DO 3 TIMES.
V_INT = SY-INDEX + 4.
ITAB-KEY1 = 'A'.
ITAB-KEY2 = 'B'.
ITAB-KEY3 = 'C'.
ITAB-KEY4 = 'D'.
ASSIGN COMPONENT V_INT OF STRUCTURE S_STRUC TO <FS>.
ASSIGN COMPONENT V_INT OF STRUCTURE ITAB TO <FS1>.
<FS1> = <FS>.
APPEND ITAB.
ENDDO.
LOOP AT ITAB.
WRITE: / ITAB.
ENDLOOP.
Thanks,
Naren
Message was edited by: Narendran Muthukumaran -
Convert columns to rows by a select query
I have a table with 10 columns. Pk is combination of 3 columns, let us say A, B and C. I need a select query which returns 7 rows with four columns each let us say A,B,C and D where D contains the value of non PK column. i.e. for first row, D will contain value of fourth column of the table, for second row, D will contain fifth column of the table and so on.
Please help.Maybe NOT TESTED!
select col_a,col_b,col_c,column_4 col_d
from (select col_a,col_b,col_c,col_d,col_e,col_f,col_g,col_h,col_i,col_j
from the_table
unpivot include nulls (column_4 for source_column in (col_d as 'col_d',
col_e as 'col_e',
col_f as 'col_f',
col_g as 'col_g',
col_h as 'col_h',
col_i as 'col_i',
col_j as 'col_j'
)Regards
Etbin -
Hi,
I have data as below
MS
DATE
A1
1.1.2010
A2
1.1.2010
And i need the result as below
A1
A2
1.1.2010
1.1.2010
Please help..................urgent!!!!!!!!!!!!
P karHello ,
A common scenario where PIVOT can be useful is when you want to generate cross-tabulation reports to summarize data. For example, suppose you want to query the
PurchaseOrderHeader table in the
AdventureWorks2008R2 sample database to determine the number of purchase orders placed by certain employees. The following query provides this report, ordered by vendor.
Copy
USE AdventureWorks2008R2;
GO
SELECT VendorID, [250] AS Emp1, [251] AS Emp2, [256] AS Emp3, [257] AS Emp4, [260] AS Emp5
FROM
(SELECT PurchaseOrderID, EmployeeID, VendorID
FROM Purchasing.PurchaseOrderHeader) p
PIVOT
COUNT (PurchaseOrderID)
FOR EmployeeID IN
( [250], [251], [256], [257], [260] )
) AS pvt
ORDER BY pvt.VendorID;
Here is a partial result set.
VendorID Emp1 Emp2 Emp3 Emp4 Emp5
1492 2 5 4 4 4
1494 2 5 4 5 4
1496 2 4 4 5 5
1498 2 5 4 4 4
1500 3 4 4 5 4
The results returned by this subselect statement are pivoted on the
EmployeeID column.
Ref : MSDN
Ahsan Kabir Please remember to click Mark as Answer and Vote as Helpful on posts that help you. This can be beneficial to other community members reading the thread. http://www.aktechforum.blogspot.com/
Maybe you are looking for
-
I'm currently running ios 5 beta on my iphone 4 and when i woke up this morning my phone had decided to automatically update the software OTA. After connecting to wifi and switching on location i proceeded to follow the instructions 'slide to setup'.
-
Why isn't the default outgoing email setting working correctly?
In my mail preferences I have send new messages from a specific email address selected. However, mail just keeps sending from the inbox address I am currently in. I really need the default to work. It used to before I upgraded to Mountain Lion.
-
Hi.. urgent help neede reg the AVL display
Im making use of ALV to dislay my report output. when my program is run in background , the ALV is getting displayed..but... there is another small table with information about<b> " the number of records passed "[ </b> .. i want to supress it... how
-
How do I change the date format in Forms Central from mm/dd/yyy to dd/mm/yyy?
I'm using Forms Central on a Mac and need to convert the US date format to the one used in Australia ie from mm/dd/yyyy to dd/mm/yyyy. I've tried Field properties and can't see any other options. Is there a quick fix somewhere?
-
Hello: I uploaded a CSS file that I would like to use for my application. I selected the template for Page and modified the following line to say this: <link rel="stylesheet" href="#WORKSPACE_IMAGES#theme14.css" type="text/css">. When I applied the c