我有兩個表,分別是firstname
,lastname
和amount
。「no no column」from select
我可以做一個左連接:
select * from spi left join dp
on spi.amount = dp.amount
and lower(spi.firstname) = lower(dp.firstname)
and lower(spi.lastname) = lower(dp.lastname);
這給了良好的效果:
|# |firstname |lastname |amount|dp.firstname |dp.lastname |dp.amount
|----+--------------+------------+------+-------------+-------------+---------
|1 |saumeh synah |s***** |50.0 | | |
|2 |Neda |M***** |1000.0| | |
|3 |Mansoor |B********** |100.0 | | |
|4 |Hanna |W**** |50.0 |Hanna |W**** |50.0
|5 |Kristen |A**** |40.0 |Kristen |A**** |40.0
|6 |David |B****** |10.0 |David |B****** |10.0
現在我想選擇只是從dp
缺少的行。
所以我寫:
select * from (
select * from spi left join dp
on spi.amount = dp.amount
and lower(spi.firstname) = lower(dp.firstname)
and lower(spi.lastname) = lower(dp.lastname))
where dp.amount = null;
,但我得到的錯誤
no such column: dp.amount
爲什麼不呢?
'其中dp.amount = null'將導致0行。總是。 –
@ypercube優秀的捕獲,我專注於語法snafu,並沒有事件思考破碎的邏輯;)現在更新響應 – billinkc