Fel*_*ont 3 postgresql join query distinct
我在使用内部联接从两个表中获取唯一值时遇到问题。
\nSELECT distinct cast (opd.order_number as integer), p.payment_id ,\n pt.transaction_status, \n opd.installments_number, \n pt.amount, \n pt.origin_amount,\n p.payment_capture_type,\n opd.brand,\n pt.created_date, \n d."name" \nFROM payment p \nINNER JOIN payment_transaction pt ON pt.payment_id = p.payment_id\ninner join "domain" d on d.domain_id = p.domain_id \nINNER JOIN attempted_online_payment_data opd ON p.payment_id = CAST ( opd.order_number AS INTEGER )\nWHERE \np.created_date >= \'2021-11-01\' and status = 1\n
Run Code Online (Sandbox Code Playgroud)\n这是我正在使用的查询,我想要一个 payment_id\xc2\xb4s 的唯一值列表,但是当我这样做时,由于某种原因它会带来两个相同的 payment_id。
\n\n如何为每个 payment_id 获取唯一的行?
\nDISTINCT
将删除重复的结果行,即所有列都相等的行。
如果您只需要每个结果行payment_id
,有两种选择:
用于SELECT DISTINCT ON (payment_id)
仅返回每个 的第一行payment_id
。
使用GROUP BY payment_id
并汇总每组的结果。
什么是正确的解决方案将取决于您的要求。
归档时间: |
|
查看次数: |
14685 次 |
最近记录: |