[前][次][番号順一覧][スレッド一覧]

mysql:12873

From: 松本 創 <松本 創 <kurari@xxxxxxxxxx>>
Date: Sun, 19 Mar 2006 21:01:57 +0900
Subject: [mysql 12873] Re: 動的なフィールド生成

fnさん、fyさん、
ありがとうございます。
説明が下手でごめんなさい。
少し意図が伝わり切っていなかったようで反省しています。
それでも、二方との返事大変興味深いSQLで、本当にありがたく思っています。

追加で質問させていただきます。


以下要件です。
1.WEBページに使用するデータをデータベースで持ちたい。
2.WEBページはWEBページ毎に所有するデータが異なる。

以下追加質問です。
>SELECT @image:=value FROM TabPageData WHERE page_id=@id AND name='image';
>SELECT @lead:=value FROM TabPageData WHERE page_id=@id AND name='lead';
↑の部分を
SELECT @<name に入っている値>:=value From TabPageData とすることは可能で
しょうか?

たとえば、ページ1が持つべき要素を別テーブルで定義している場合なのですが。

<TabPageDataDef>
page_id	| name	|
------------------
1	| image	|
1	| lead	|

そこで、定義すべき要素を取得して、データを取得したいのですが、どうしたら
良いのでしょう?

まとめると、
<TabPage> ページの基本要素を持っている
<TabPageData> ページ毎に異なる拡張要素を持っている
<TabPageDataDef> ページ毎持っている拡張要素を定義している。

といった要件です。

よろしくお願いします。
>
>以下のように、
>変数に格納して、最終的に結果を出力するというのではどうでしょう。
>
>SELECT @id:=id, @title:=title, @body:=body FROM TabPage WHERE (絞り込み条
>件); 
>
>SELECT @image:=value FROM TabPageData WHERE page_id=@id AND name='image';
>SELECT @lead:=value FROM TabPageData WHERE page_id=@id AND name='lead';
>
>SELECT @id id, @title title, @body body, @image image, @lead lead;
>
>
>
>- fn
>
>
>----- Original Message ----- 
>From: "松本 創" <kurari@xxxxxxxxxx>
>To: <ml@xxxxxxxxxx>
>Sent: Saturday, March 18, 2006 4:52 PM
>Subject: [mysql 12870] 動的なフィールド生成
>
>
>> 初めて投稿します。
>> SQLについて教えてください。
>>
>> 1.既存テーブル
>>
>> TabPage
>> |id|title|body
>>
>> TabPageData
>> |page_id|id|name|value
>>
>> Pageに対するDataの多重度は 0-*です。
>> DataからみたPageは1です。
>>
>> たとえばこんなデータがあったとします
>>
>> [TabPage]
>> id = 1
>> title = test
>> body = body
>>
>> [TabPageData]
>> page_id = 1
>> id = 1
>> name = image
>> value = test.gif
>> ---
>> page_id = 1
>> id = 2
>> name = lead
>> value = test lead
>>
>> といった構造を何らかのSelect SQLを発行して
>>
>> Page_id |title | body | image | lead
>> ----------------------------------------------------
>> 1 |test | body | test.gif | test lead
>>
>> という形でデータを受け取りたいのですが、可能でしょうか?
>> ちなみにPageによって、PageDataの持つnameは異なります。
>>
>> どなたか分かる方いらっしゃれば、おしえてください。
>>
>>
>>
>> 




[前][次][番号順一覧][スレッド一覧]

     12870 2006-03-18 16:52 [松本 創 <kurari@xxxx] 動的なフィールド生成                    
     12871 2006-03-18 18:51 ┣["F.Y" <fumi_sby@xxxx]                                       
     12872 2006-03-19 19:43 ┗[<nagai@xxxxxxxxxx>  ] Re: $BF0E*$J%U%#!&lt;%k%I@8@.(B     
->   12873 2006-03-19 21:01  ┗[松本 創 <kurari@xxxx] Re: 動的なフィールド生成