我在oracle 10g中有一个如下表。
**Pat_no pat_id doc doc_flag**
A1 123 ABD Y
A1 123 ABC Y
A1 123 ABE Y
A1 123 ABF Y
当所有不同的文档都有标记' Y'时,我想要单行输出。
**Pat_no pat_id doc_flag**
A1 123 Y
如果任何人的doc_flag为' N'然后输出应该是N'
**Pat_no pat_id doc_flag**
A1 123 N
我该怎么做?
答案 0 :(得分:2)
我认为你正在寻找
select pat_no, pat_id, min(doc_flag) doc_flag
from t
group by pat_no, pat_id
答案 1 :(得分:0)
这就是你想要的:
select pat_no, pat_id, 'Y'
from t
group by pat_no, pat_id
having min(doc_flag) = max(doc_flag) and min(doc_flag) = 'Y';
答案 2 :(得分:0)
您可以将CASE
聚合功能与SELECT pat_no,
pat_id,
CASE
WHEN COUNT( CASE doc_flag WHEN 'N' THEN 1 END ) > 0
THEN 'N'
ELSE 'Y'
END AS doc_flag
FROM your_table
GROUP BY
pat_no,
pat_id
:
cd /var/lib/dpkg/info
sudo sed -i 's|JAVA_VERSION=8u161|JAVA_VERSION=8u171|' oracle-java8-installer.*
sudo sed -i 's|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/|' oracle-java8-installer.*
sudo sed -i 's|SHA256SUM_TGZ="6dbc56a0e3310b69e91bb64db63a485bd7b6a8083f08e48047276380a0e2021e"|SHA256SUM_TGZ="b6dd2837efaaec4109b36cfbb94a774db100029f98b0d78be68c27bec0275982"|' oracle-java8-installer.*
sudo sed -i 's|J_DIR=jdk1.8.0_161|J_DIR=jdk1.8.0_171|' oracle-java8-installer.*