【问题标题】:Can I include hardcoded data in a SQL SELECT result set?我可以在 SQL SELECT 结果集中包含硬编码数据吗?
【发布时间】:2015-07-23 11:50:01
【问题描述】:

我有以下代码:(伪代码)

Select id, name, code, address from users

我对数据库中的数据进行 json 编码,如下所示:

{"id":"228","name":"Jimmy","code":"12345","address":"abc street"},      {"id":"229","name":"John","code":"22345","address":"10 1st street"}

但我实际上需要数据看起来像这样:

{"id":"228","name":"Jimmy","code":"12345","address":"abc street", "DT_RowId": "row_228"},       {"id":"229","name":"John","code":"22345","address":"10 1st street","DT_RowId": "row_229"}

其中 DT_RowId 是具有记录 ID 的字段,前缀为文本“row_”。 有没有办法强制 sql 语句将其作为结果集的一部分包含在内? 这可能不是最好的方法......但是这个问题突然出现在我的脑海中,所以现在我很好奇。

【问题讨论】:

    标签: sql json sqlite


    【解决方案1】:

    当然,只需将连接运算符|| 与字符串文字一起使用:

    Select 
      id, 
      'row_' || id as DT_RowId, 
      name, 
      code, 
      address 
    from users
    

    【讨论】:

    • 如果你有一个名为 [id] 的列包含任意数据,如果你想要 SQLite 分配的行 id,请改用 rowid
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-18
    • 1970-01-01
    • 1970-01-01
    • 2012-04-17
    • 2018-07-23
    • 2012-04-14
    • 1970-01-01
    相关资源
    最近更新 更多