2017-03-21 3 views
2

私は以下のクエリを継承しました。最初の左の結合で "--and"の意味を理解しようとしていますか? 8.1を使用する'--and'はpostgresqlクエリで何を意味するのですか

私はオリジネーションの結果を制限する使命を帯びてきた>日付、最初はそれがすべてで働く理由を把握しようと...

select distribution_stop_information.customer_no, 
distribution_line_items.item_number, 
distribution_line_items.container_id, 
distribution_line_items.item_description, 
distribution_stop_information.customer_reference, 
distribution_stop_information.bol_number, SUBSTRING(distribution_stop_information.bol_number,1,4) as ODDC, 
SUBSTRING(distribution_stop_information.bol_number,9,4) as ODRT, 
distribution_stop_information.branch_id, 
distribution_stop_information.route_date, 
(select count(innerDLI.item_number)-1 from distribution_line_items innerDLI where innerDLI.item_number = distribution_line_items.item_number) as RDLcount, 
(select innerDLI.datetime_created from distribution_line_items innerDLI where innerDLI.item_number = distribution_line_items.item_number order by innerDLI.datetime_created asc limit 1) as Origination, 
distribution_stop_information.route_code, 
distribution_stop_information.stop_name, 
distribution_stop_information.stop_address, 
distribution_stop_information.stop_city, 
distribution_stop_information.stop_state, 
distribution_stop_information.stop_zip_postal_code, 
distribution_stop_information.stop_signature, 
CASE WHEN distribution_line_items.exception_code is not null 
    THEN distribution_line_items.exception_code 
    ELSE distribution_stop_information.stop_exception_code 
    END as ExceptionCode, 
distribution_stop_information.signature_file_name, 
distribution_stop_information.sign_bitmap_file_exists, 
ScanR.item_was_scanned as ScanR, 
ScanL.item_was_scanned as ScanL, 
ScanD.item_was_scanned as ScanD 
from distribution_stop_information 
inner join distribution_line_items on distribution_line_items.unique_id_no = distribution_stop_information.unique_id_no 
left join distribution_item_scans ScanR on 
    ScanR.item_sequence_no = distribution_line_items.item_sequence_no 
    and ScanR.stop_unique_id_no = distribution_stop_information.unique_id_no and ScanR.scan_type = 1 
    --and ScanR.scan_datetime between to_date(?, 'YYYY-MM-DD') and (to_date(?, 'YYYY-MM-DD') + interval '1 day') 
left join distribution_item_scans ScanL on 
    ScanL.item_sequence_no = distribution_line_items.item_sequence_no 
    and ScanL.stop_unique_id_no = distribution_stop_information.unique_id_no and ScanL.scan_type = 2 
    and ScanL.scan_datetime between to_date(?, 'YYYY-MM-DD') and (to_date(?, 'YYYY-MM-DD') + interval '1 day') 
left join distribution_item_scans ScanD on 
    ScanD.item_sequence_no = distribution_line_items.item_sequence_no 
    and ScanD.stop_unique_id_no = distribution_stop_information.unique_id_no and ScanD.scan_type = 9 
    and ScanD.scan_datetime between to_date(?, 'YYYY-MM-DD') and (to_date(?, 'YYYY-MM-DD') + interval '1 day') 
where 
distribution_stop_information.customer_no in ('90202') 
and distribution_stop_information.route_date between (to_date(?, 'YYYY-MM-DD')) and (to_date(?, 'YYYY-MM-DD')) 
and distribution_line_items.datetime_created between (to_date(?, 'YYYY-MM-DD') - interval '288 hours') and (to_date(?, 'YYYY-MM-DD') + interval '12 hours') 
+0

Ehhh ...インラインコメントです... –

+0

https://www.postgresql.org/docs/current/static/sql-syntax-lexical.html#SQL-SYNTAX-COMMENTS –

+1

well ... OK。私はそれらを一度も使用しておらず、 "postgresql - "でグーグルグーグルは何もプルアップしていませんでした。私はそれができるようになるとすぐに答えを受け入れます。 –

答えて

4

--はCのSQL-同等であるか、C#の// 。それは、行の残りの部分がコメントされていることを意味します。

2

--はコメントアウトされています。もともとは、もう一つのフィルタANDであったが、誰かが削除したが、コードを完全に削除したくなかった。それは効果がありません。

関連する問題