2013-06-05 10 views
5

私は単一の列を持つ2つのテーブルを持っています。すなわちタイプとタイプとURLテーブルがそれらの間に関係のない2つのテーブルを結合します

+4

何かを共有していないと、どうやって関連付けるのですか? IDを持つテーブルやテーブルを作るためには、テーブルを再設計する必要があります。 – sashkello

+0

それ以外の場合は、ファイルタイプを定義するためにregexpを使用することができます。 – sashkello

+0

@sashkelloタイプテーブルの最初のアイテムは、URLテーブルの最初のアイテムなどに関連します。 – manoj

答えて

3

あなたが解決策見つけることができる何primeryキー列を持っていない私は

Type      URL 
    ----------------------------- 
    image     http://photo.com/some.jpg 
    image     http://photo.com/some1.jpg 
    image     http://photo.com/some2.jpg 
    video     http://video.com/some.avi 

がどのように私はここで結果を得ることができるようなりたい

items 
----- 
image 
image 
image 
video 

items 
----- 
http://photo.com/some.jpg 
http://photo.com/some1.jpg 
http://photo.com/some2.jpg 
http://video.com/some.avi 

としてこれらはURL Here以下は

は詳細

CREATE TABLE T1 (
    items VARCHAR(10) 
) 
CREATE TABLE T2 (
    items VARCHAR(100) 
) 
INSERT INTO T1 
VALUES ('image'),('image'),('image'),('video') 

INSERT INTO T2 
VALUES ('http://photo.com/some.jpg'),('http://photo.com/some1.jpg'),('http://photo.com/some2.jpg'),('http://video.com/some.avi') 


select TT1.t1_items as Type,TT2.t2_items as URL from 
(select items t1_items,row_number() over(order by (SELECT 0)) as t1r from t1) as TT1, 
(select items t2_items,row_number() over(order by (SELECT 0)) as t2r from t2) as TT2 
where TT1.t1r = TT2.t2r 
です
+1

アルファベット順にそれぞれのインデックスで両方を結合することが目的の場合にのみ、これは正しいです。 OPは参加するための 'id'フィールドを追加するか、@ sashkelloがすでに言ったように一つのテーブルを使うべきです。 –

+0

@MartinSmithはライトです。ビデオをタイプテーブルの2行目に配置するとエラーが発生します – manoj

関連する問題