2013-07-09 2 views
2

내가 몇이 같은 SQL Server 데이터베이스의 열이 : 나는 그들을 >*</div>의 내부 값에 따라 BY ORDER를 사용하여 순서를 변경하고자하는주문 열들이 HTML 태그를 포함 할 때

Column1      Column2 
Item1       <div id="html"><img.............>5424</div> 
Item2       <div id="html"><img.............>3424</div> 
Item3       <div id="html"><img.............>8424</div> 
Item4       <div id="html"><img.............>6424</div> 

을,

SELECT 
    Table1_1.F1 AS Column1, Table2_1.1PrisHTML AS Column2 
FROM  
    Table2 AS Table2_1 
CROSS JOIN 
    Table1 AS Table1_1 

UNION ALL 

SELECT 
    Table1_1.L1, Table2_1.2PrisHTML 
FROM  
    Table2 AS Table2_1 
CROSS JOIN 
    Table1 AS Table1_1 

UNION ALL 

SELECT 
    Table1_1.M1, Table2_1.3PrisHTML 
FROM  
    Table2 AS Table2_1 
CROSS JOIN 
    Table1 AS Table1_1 

UNION ALL 

SELECT 
    Table1_1.T1, Table2_1.4PrisHTML 
FROM 
    Table2 AS Table2_1 
CROSS JOIN 
    Table1 AS Table1_1 
: 나는 데이터베이스에서 값을 추출하려면 다음 코드를 사용하고

Column1      Column2 
Item2       <div id="html"><img.............>3424</div> 
Item1       <div id="html"><img.............>5424</div> 
Item4       <div id="html"><img.............>6424</div> 
Item3       <div id="html"><img.............>8424</div> 

을 : 출력은 다음과 같습니다 있도록3210

아무도 제안이 없습니까?

편집 :
내가 별도의 열의 값이 DO, I 정렬에 사용할 수 Column3을했다. 하지만이 열을 표시하고 싶지 않습니다. 어떤 제안?

+0

나의 제안은 별도의 컬럼으로 밖으로 정렬 할 값을 파괴하는 것입니다. 테이블 스키마를 제어 할 수 있습니까? –

+0

안녕하세요. 별도의 열에 값이 있습니다! 그래서 그들을 정렬 할 수 있습니다. 그러나 그들을 표시하고 싶지 않습니다. – Dimo

+0

일반적으로 데이터베이스에 HTML 서식을 저장하면 안됩니다. –

답변

3

SQL 쿼리 끝에 Order By 절을 추가하기 만하면됩니다. 선택 쿼리에 추가 할 필요가 없습니다.

나는 이런 식으로 할 거라고 :

SELECT Column1, Column2 
    FROM 
    (
    SELECT Table1_1.F1 AS Column1, Table2_1.1PrisHTML AS Column2, Column3 
    FROM  Table2 AS Table2_1 CROSS JOIN 
         Table1 AS Table1_1 
    UNION ALL 
    SELECT Table1_1.L1 AS Column1, Table2_1.2PrisHTML AS Column2, Column3 
    FROM  Table2 AS Table2_1 CROSS JOIN 
         Table1 AS Table1_1 
    UNION ALL 
    SELECT Table1_1.M1 AS Column1, Table2_1.3PrisHTML AS Column2, Column3 
    FROM  Table2 AS Table2_1 CROSS JOIN 
         Table1 AS Table1_1 
    UNION ALL 
    SELECT Table1_1.T1 AS Column1, Table2_1.4PrisHTML AS Column2, Column3 
    FROM  Table2 AS Table2_1 CROSS JOIN 
         Table1 AS Table1_1 
    ) 
    ORDER BY Column3 
+0

지금 시도 중입니다. – Dimo

+0

Column1 및 Column2 별칭이 누락되었습니다. 나는 그들을 추가했다. 미안합니다. –

+0

나를 위해 작동하지 않습니다. 문제는 모든 항목에 대해 column3의 이름이 다른 것입니다. 예를 들어 F1의 경우 F1Col3이라고하면 L1의 경우 L1Col3, T1의 경우 M1Col3 T1Col3 – Dimo

관련 문제