Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 列的不同值_Sql_Postgresql - Fatal编程技术网

Sql 列的不同值

Sql 列的不同值,sql,postgresql,Sql,Postgresql,我有很多单地址,其中有不同的Sq_ft值(不应该是这种情况)。我想对同一地址的Sq_Ft值不同的列进行解析。我可以在where子句中添加哪些内容来帮助我这样做?我曾尝试用Sq_ft添加不同的语法,但徒劳无功 例如: Address of New Home Sq_Ft 1234 Obama Drive 2,578 1234 Obama Drive 2,586

我有很多单地址,其中有不同的Sq_ft值(不应该是这种情况)。我想对同一地址的Sq_Ft值不同的列进行解析。我可以在where子句中添加哪些内容来帮助我这样做?我曾尝试用Sq_ft添加不同的语法,但徒劳无功

例如:

Address of New Home                      Sq_Ft
1234 Obama Drive                         2,578
1234 Obama Drive                         2,586

select "Address_of_New_Home","Sq_Ft"
from "Amazon".salesdatapcr
where "Sq_Ft" <>
order by 1
新住宅平方英尺的地址
1234奥巴马大道2578号
1234奥巴马大道2586号
选择“新家地址”、“平方英尺”
来自“亚马逊”。salesdatapcr
“平方英尺”在哪里
按1订购

这将列出一个表中的行,其中一个地址有多个不同的平方英尺:

SELECT salesdt.*
FROM "Amazon".salesdatapcr salesdt
JOIN (
  SELECT
    "Address_of_New_Home" AS home_address
  FROM
    "Amazon".salesdatapcr
  GROUP BY 1
  HAVING COUNT(DISTINCT "Sq_Ft") > 1
  ) multisqft ON
    salesdt."Address_of_New_Home" = multisqft.home_address
ORDER BY multisqft.home_address

您也可以使用
EXISTS
IN
来实现这一点<代码>顺序是为了让事情更清楚。

这将列出一个表中的行,其中一个地址有多个不同的平方英尺:

SELECT salesdt.*
FROM "Amazon".salesdatapcr salesdt
JOIN (
  SELECT
    "Address_of_New_Home" AS home_address
  FROM
    "Amazon".salesdatapcr
  GROUP BY 1
  HAVING COUNT(DISTINCT "Sq_Ft") > 1
  ) multisqft ON
    salesdt."Address_of_New_Home" = multisqft.home_address
ORDER BY multisqft.home_address

您也可以使用
EXISTS
IN
来实现这一点<代码>顺序用于使事情更清楚。

使用
存在
运算符和相关子查询:

select "Address_of_New_Home","Sq_Ft"
from "Amazon".salesdatapcr t1
where EXISTS (
   SELECT null from "Amazon".salesdatapcr t2
   WHERE t1."Address_of_New_Home" = t2."Address_of_New_Home"
     and t1."Sq_Ft" <> t2."Sq_Ft"
)
order by 1
选择“新家地址”、“平方英尺”
来自“亚马逊”。salesdatapcr t1
哪里有(
从“Amazon”中选择null。salesdatapcr t2
其中t1.“新家地址”=t2.“新家地址”
t1.“平方英尺”t2.“平方英尺”
)
按1订购

使用
存在的运算符和相关子查询:

select "Address_of_New_Home","Sq_Ft"
from "Amazon".salesdatapcr t1
where EXISTS (
   SELECT null from "Amazon".salesdatapcr t2
   WHERE t1."Address_of_New_Home" = t2."Address_of_New_Home"
     and t1."Sq_Ft" <> t2."Sq_Ft"
)
order by 1
选择“新家地址”、“平方英尺”
来自“亚马逊”。salesdatapcr t1
哪里有(
从“Amazon”中选择null。salesdatapcr t2
其中t1.“新家地址”=t2.“新家地址”
t1.“平方英尺”t2.“平方英尺”
)
按1订购

在地址上执行自连接,然后比较平方英尺。
选择a“新家地址”,a“亚马逊”中的“平方英尺”。saledatapcr a内部连接“亚马逊”。saledatapcr B在a“新家地址”=B“新家地址”和a.squ英尺B.sq英尺顺序为1。
在地址上执行自连接,然后比较平方英尺。
选择a。“新家的地址”,来自“亚马逊”的“平方英尺”。salesdatapcr内部连接“亚马逊”。salesdatapcr B位于“新家的地址”=B。“新家的地址”“和A.Sq_Ft B.Sq_Ft顺序为1
我不知道哪一个标记正确。这两个答案都很棒。如果你不知道,那就掷硬币决定哪个答案正确。我不知道哪个答案正确。这两个答案都很棒。如果你不知道,那就掷硬币决定哪个答案正确。我不知道哪个答案正确。这两个答案都很棒。我不知道哪一个正确。这两个答案都很棒。