【问题标题】:SQL concat two columns into oneSQL将两列合并为一
【发布时间】:2020-04-24 20:50:45
【问题描述】:

使用 SQL,我想将两列合并为一列。

这里的输入表由两列组成:

stop_id         stop_sequence
--------        -------------
35792956        1
29923564        5
64392834        3
54832139        71
98323521        25
73410935        4

期望的输出

stop_id_coded
-------------
 357929561
 299235645
 643928343
5483213971
9832352125
 734109354

注意:在这种情况下,所有数据都是 TEXT。

这是我的试验:

试验一:

CREATE TABLE my_result_table AS
  SELECT DISTINCT STR(stop_id + stop_sequence) as stop_id_coded
  FROM my_input_table;

错误:没有这样的功能:STR

试验 2:

CREATE TABLE my_result_table AS
  SELECT DISTINCT CONCAT(stop_id + stop_sequence) as stop_id_coded
  FROM my_input_table;

错误:没有这样的函数:CONCAT

试验 3:

CREATE TABLE my_result_table AS
  SELECT DISTINCT (stop_id + stop_sequence) as stop_id_coded
  FROM my_input_table;

没有错误 - 但生成的 stop_id_coded 列仍然仅包含 stop_id 列(并且 stop_sequence 似乎由于某些未知原因而被忽略......)

对此有何帮助?

【问题讨论】:

  • 您使用的是哪个DBMS 产品? “SQL”只是一种查询语言,而不是特定数据库产品的名称。请为您正在使用的数据库产品添加tagWhy should I tag my DBMS
  • Apparently dbbrowser 的连接运算符是||(这不难找到,你搜索了吗?)
  • 感谢 HoneyBadger,我不知道 SQL 和 SQLite 使用不同的语法。而且由于这对我来说都是新事物,所以我走错了路。感谢您的解决方案。

标签: sql sqlite select concat


【解决方案1】:
CREATE TABLE my_result_table AS    
SELECT CONCAT(stop_id  , stop_sequence) AS stop_id_coded
FROM my_input_table;

【讨论】:

  • 总是给出详细的答案,以便其他用户更了解您的解决方案。
【解决方案2】:

请尝试关注,

CREATE TABLE my_result_table AS    
SELECT (stop_id  || stop_sequence) AS stop_id_coded
FROM my_input_table;

【讨论】:

  • 库什,谢谢您-您的解决方案也很有效! (或者如前所述,也是 Ajeet 的解决方案)。
【解决方案3】:

请尝试下面的代码..

CREATE TABLE my_result_table AS
    SELECT DISTINCT stop_id || stop_sequence AS stop_id_coded
    FROM my_input_table

如果上面的代码不起作用,请尝试下面的代码..

CREATE TABLE my_result_table AS
    SELECT DISTINCT cast(stop_id as VARCHAR(100)) || cast(stop_sequence as VARCHAR(100)) AS stop_id_coded
    FROM my_input_table

【讨论】:

  • 兄弟,使用 ||运算符代替 CONCAT,SQLLite 不支持 concat 函数
猜你喜欢
  • 2014-10-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-28
  • 2014-05-09
  • 1970-01-01
相关资源
最近更新 更多