0

テーブル:qa_selltypes

selltype_code, selltype_name
'1', 'unit'
'2', 'pound'
'3', 'box'
'4', 'gallon'

テーブル:qa_items

item_code, item_name, selltype_code, item_price
'1', 'PS2 Keyboard', '1', '10.45'
'2', 'Screws', '3', '15.02'
'3', 'Oil', '2', '30.00'

Selltype_codeのフィールドとの関係に従ってitem_priceを確立する4つのフィールド(unit、stall、pound、gallon)を含むグリッドを補充する必要があります。1つの例:残りはそれらを0に設定します

DGV:

item_code, item_name, unit, box, pound, gallon
'1', 'PS2 Keyboard', '10.45', '0', '0', '0'
'2', 'Screws', '0', '0', '15.02', '0'
'3', 'Oil', '0', '30.00', '0', '0'
4

2 に答える 2

3
select i.item_code, i.item_name, 
    case when q.selltype_name = 'unit' then i.item_price else 0 end as unit,
    case when q.selltype_name = 'box' then i.item_price else 0 end as box,
    case when q.selltype_name = 'pound' then i.item_price else 0 end as pound,
    case when q.selltype_name = 'gallon' then i.item_price else 0 end as gallon
from qa_items i
inner join qa_selltypes q on i.selltype_code = q.selltype_code
于 2012-07-03T15:07:36.347 に答える
1

を使用できますcase。例:

select case when some_column = 'abc'
            then 'hello'
            else 'good bye'
            end as conditional_column
from your_table
于 2012-07-03T15:04:52.183 に答える