2011-12-22 3 views
0

このような説明文を残しておきたいです。実際に、列と列のデータ型を取得する必要性は、 'wyspesific'という別のテーブルに格納されます。は、mysqlクエリにjoinステートメントを残すことは可能ですか?

select 
st.segnam as Segment, 
st.typnam as 'Sub-Segment', 
group_concat(distinct ws.fldnam) as 'Field Tag Name (database)', 
group_concat(distinct ws.fldcap) as 'Field Name Label', 
concat('(', group_concat(distinct of.optcap order by of.optcap desc),')') as optionFieldLabel, 
concat('(', group_concat(distinct of.optval order by of.optcap desc),')') as optionFieldValue, 
ws.isopt as isOptionField 
from shiptype st 
left join wyspecific ws on ws.wytypid = st.wytypid and ws.enabled = 'Y' 
left join optionfields of on of.fldnam = ws.fldnam and of.deleted = 'N' 
left join (explain shipspecific) as v on ws.fldnam = v.Field 
where st.segid in(6,4,8,9,10,11,12) and ws.enabled = 'Y' 
group by ws.fldid 
order by st.segid 

ご意見やご提案をいただければ幸いです。

ありがとうございます。

答えて

2

代わりINFORMATION_SCHEMA.COLUMNSからこの情報を取得する必要があります

SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='shipspecific' AND TABLE_SCHEMA=DATABASE()