mysql - 将 sql 查询结果的前 4 个字符分配到另一列?

标签 mysql sql

我正在使用下面的 SQL 代码来获取计算机列表。我需要以某种方式获取这些结果并用每条记录的前 4 个字符填充它旁边的另一列。例如:

Computer Name  New Column

ABCD1000P      ABCD

这可能吗?

SELECT   SYS.Netbios_Name0
FROM dbo.v_R_System AS SYS 
     INNER JOIN dbo.v_GS_PROCESSOR AS Processor ON SYS.ResourceID = Processor.ResourceID 
     INNER JOIN dbo.v_GS_COMPUTER_SYSTEM ON SYS.ResourceID = dbo.v_GS_COMPUTER_SYSTEM.ResourceID
WHERE (SYS.Obsolete0 = 0) AND (SYS.Client0 = 1)and SYS.Netbios_Name0 not like '%-%'

最佳答案

使用LEFT函数

SELECT S.Netbios_Name0 AS ComputerName, LEFT(S.Netbios_Name0, 4) AS NewColumn
FROM dbo.v_R_System AS S
INNER JOIN dbo.v_GS_PROCESSOR AS P ON S.ResourceID = P.ResourceID 
INNER JOIN dbo.v_GS_COMPUTER_SYSTEM AS C ON S.ResourceID = C.ResourceID
WHERE S.Obsolete0 = 0
AND S.Client0 = 1
AND S.Netbios_Name0 NOT LIKE '%-%'

关于mysql - 将 sql 查询结果的前 4 个字符分配到另一列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30460986/

相关文章:

MySQL 查询以检索在多对多关系中具有完全匹配的项

php - 动态 php 标题取决于页面 id 和 "if (isset"的使用

sql - 将 ClickHouse 中嵌套类型的不同键值对收集到数组中

本地主机上的 MySQL 拒绝连接

python - TruncDay 无法在 Django+MySQL5.5 中工作

sql - Laravel Eloquent limit() 和 count() 返回完整计数

mysql - UNIQUE SQL 索引是否也用于加速搜索?

sql - 优化保存到sqlite数据库?

mysql - MySQL查询太慢了

php - 在symfony2的entites文件夹中保持表的相同名称