Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试查询我在列中的数据的缩写。例如,假设我在列中包含美国的所有城市。我想查询“NY”并取回包含“New York”的行。在 Postgres 中有没有办法做到这一点?
有多种方法可以实现这一目标。
您可以创建一个映射表,将它们的首字母和州名保存在两列中。然后,您可以使用 join 语句连接两个表,并在映射表的首字母列上使用 where 条件。
第二种方法是使用带有来自 states 列的派生列的 select 语句。该派生表将具有各州的首字母。您可以首先使用按空格分割,使用 left(string) 方法获取第一个字母并将它们连接在一起。现在您可以在这个新的派生缩写列上有一个 where 条件。但这里的缺点是,如果状态只有一个单词,您将只能得到一个首字母。