1
我想插入到具有4列的表中。前兩列將使用select into語句填充,而las兩列將從兩個不同的表中填充。我想要做的是,它將全部按行排列,沒有重複和空值。SQL-通過將不同的select into查詢插入到多個列中
爲了形象化我的計劃,這裏是所需的輸出:
,但每當我試圖這樣做,這是我所得到的:
空值每個插入。我目前使用的程序,這裏是我的查詢:
CREATE DEFINER=`root`@`localhost` PROCEDURE `Biller`(IN Pid varchar(30))
BEGIN
insert into sample2(ids,prices)
select bed_bill_id,price
from bed_billing
where patient_id = Pid
UNION
select csr_bill_id,price
from csr_billing
where patient_id = Pid
UNION
select lab_bill_id,price
from lab_billing
where patient_id = Pid
UNION
select pharm_bill_id,price
from pharm_billing
where patient_id = Pid
UNION
select rad_bill_id,price
from rad_billing
where patient_id = Pid;
insert into sample2(patient)
values(Pid);
insert into sample2(physician)
select attending_id
from attending_physician
where attending_physician.patient_id = Pid;
END
這就是我正在考慮插入太多。但是當我嘗試你的查詢時,它說''字段列表' – JJCADIZ
'中的未知列'b.bill_id'我已經解決了它。使用您的查詢。問題是'b.bill_id',但另一列的名字不同,所以我只是把'AS bill_id'放在select查詢中。非常感謝。 – JJCADIZ
是的,謝謝,我忘了這麼做。我剛剛編輯了上述內容以包含該別名。 FWIW您只需要在第一個聯合查詢中爲別名添加別名。後續的聯合查詢將根據第一個查詢採用列名。 –