如何隐藏 SELECT 中的列

how to hide a column in SELECT

我必须得到一个要隐藏 select 的列。更具体地说 s.spelersnr 但我不知道怎么做。

我尝试在我的 ORDER BY 中使用 select 列,但我不想让它显示在结果中。

SELECT DISTINCT naam,voorletters, TO_CHAR(geb_datum,'dd-mm-yyyy') AS 
geboortedatum, b.spelersnr
FROM spelers s LEFT OUTER JOIN boetes b
 ON (s.spelersnr = b.spelersnr)
WHERE b.bedrag<75 OR b.bedrag IS null
ORDER BY b.spelersnr

我应该得到一个没有列的结果 b.spelersnr。 但是我确实得到了那个我该如何隐藏它?

使用GROUP BY:

SELECT naam, voorletters, TO_CHAR(geb_datum,'dd-mm-yyyy') AS  geboortedatum
FROM spelers s LEFT JOIN
     boetes b
     ON s.spelersnr = b.spelersnr
WHERE b.bedrag < 75 OR b.bedrag IS null
GROUP BY naam, voorletters, geboortedatum, b.spelersnr
ORDER BY b.spelersnr;

我不明白你为什么要这样做——当导致重复的列被隐藏时,生成重复的结果。

我猜你不想要这个逻辑,而是:

FROM spelers s LEFT JOIN
     boetes b
     ON s.spelersnr = b.spelersnr AND b.bedrag < 75 

returns 来自 spelers 的所有行与来自 boetes 的匹配值,其中 b.bedrag < 75.