В myView в базе данных у меня есть:
SELECT orderhdr3_.id AS col_0_0_,
gnrlorg2_.id AS col_1_0_,
gnrlorg2_.name AS col_2_0_,
gnrlcustom1_.id AS col_3_0_,
gnrlcustom1_.name AS col_4_0_,
orderhdr3_.order_no AS col_5_0_,
orderhdr3_.cust_ref_no AS col_6_0_,
tripinfo4_.job_no AS col_7_0_,
orderhdr3_.order_type AS col_8_0_,
servicetyp5_.code AS col_9_0_,
tripinfo4_.service_provider_id AS col_10_0_,
tripinfo4_.service_personnel AS col_11_0_,
orderhdr3_.status AS col_12_0_,
orderhdr3_.completed_date AS col_13_0_,
orderhdr3_.reason_code AS col_14_0_,
orderhdr3_.remarks AS col_15_0_,
orderhdr3_.source_order_hdr_location_id AS col_16_0_,
orderhdrlo7_.unit_no AS col_17_0_,
orderhdrlo7_.name AS col_18_0_,
orderhdrlo7_.address AS col_19_0_,
orderhdrlo7_.postal_code AS col_20_0_,
orderhdrlo7_.zone AS col_21_0_,
orderhdrlo7_.contact AS col_22_0_,
orderhdrlo7_.phone AS col_23_0_,
orderhdrlo7_.email AS col_24_0_,
orderhdrlo7_.op_date AS col_25_0_,
orderhdrlo7_.instruction AS col_26_0_,
orderhdr3_.dest_order_hdr_location_id AS col_27_0_,
orderhdrlo6_.unit_no AS col_28_0_,
orderhdrlo6_.name AS col_29_0_,
orderhdrlo6_.address AS col_30_0_,
orderhdrlo6_.postal_code AS col_31_0_,
orderhdrlo6_.zone AS col_32_0_,
orderhdrlo6_.contact AS col_33_0_,
orderhdrlo6_.phone AS col_34_0_,
orderhdrlo6_.email AS col_35_0_,
orderhdrlo6_.op_date AS col_36_0_,
orderhdrlo6_.instruction AS col_37_0_,
orderdet11_.product_code AS col_39_0_,
orderdet11_.product_desc AS col_40_0_,
orderdet11_.order_qty AS col_41_0_,
orderdet11_.serviced_qty AS col_42_0_,
orderdet11_.reason_code AS col_43_0_,
orderhdr3_.active_ind AS col_44_0_,
tripinfo4_.active_ind AS col_45_0_,
gnrlorg2_.active_ind AS col_46_0_,
gnrlcustom1_.active_ind AS col_47_0_,
commusersc0_.comm_user_id AS col_48_0_,
orderhdr3_.org_id AS col_49_0_,
orderhdr3_.customer_id AS col_50_0_,
orderhdrlo6_.op_date AS col_51_0_,
orderhdrlo6_.op_date AS col_52_0_,
orderhdr3_.id AS col_53_0_,
orderdet11_.order_hdr_id AS col_54_0_,
orderhdrlo6_.op_date AS col_55_0_,
tripinfo4_.job_no AS col_56_0_,
orderhdr3_.seq AS col_57_0_,
orderhdr3_.order_no AS col_58_0_
FROM comm_users_customers commusersc0_
JOIN gnrl_customer gnrlcustom1_ ON commusersc0_.gnrl_customer_id = gnrlcustom1_.id
JOIN gnrl_org gnrlorg2_ ON gnrlcustom1_.gnrl_org_id = gnrlorg2_.id
CROSS JOIN order_det orderdet11_
JOIN order_hdr orderhdr3_ ON gnrlcustom1_.id = orderhdr3_.customer_id
JOIN trip_info tripinfo4_ ON orderhdr3_.trip_info_id = tripinfo4_.id
JOIN service_type servicetyp5_ ON orderhdr3_.service_type_id = servicetyp5_.id
JOIN order_hdr_location orderhdrlo6_ ON orderhdr3_.dest_order_hdr_location_id = orderhdrlo6_.id
JOIN order_hdr_location orderhdrlo7_ ON orderhdr3_.source_order_hdr_location_id = orderhdrlo7_.id
JOIN order_hdr_location_time_windows timewindow8_ ON timewindow8_.order_hdr_location_id = orderhdr3_.dest_order_hdr_location_id
JOIN order_hdr_location orderhdrlo9_ ON timewindow8_.order_hdr_location_id = orderhdrlo9_.id;
В моем коде я хотел бы фильтровать, используя WHERE
SELECT * FROM myView view WHERE view.order_no = ?
, но Java / PostgreSQL выдает ошибку:
ОШИБКА: столбец view.order_no не существует
Пожалуйста, помогите, поскольку это довольно сложно, так как включает в себя несколько таблиц и много столбцов. Я не уверен, почему view.order_no не существует, потому что он выбран в col_5_0