【发布时间】:2021-05-06 10:19:52
【问题描述】:
我的表“Employee”中有一个列“employee_Id”。
employee_Id 包含员工姓名和出生日期。例如:
Jason-21996 和 Buttler
请帮助我编写一个返回 Jason 和 Buttler 作为输出的选择查询。
这是我正在尝试的查询:
select substring(employee_Id,1, LOCATE('-',employee_Id) - 1) as Emp_ID from Employee
我看到了这个错误:
SQL Error [42815]: THE DATA TYPE, LENGTH, OR VALUE OF ARGUMENT 3 OF SUBSTRING IS INVALID. SQLCODE=-171, SQLSTATE=42815, DRIVER=4.9.78
编辑1:根据@Mark 的建议,我已将查询编辑如下
select substring(employee_Id,1, LOCATE('-',employee_Id || '-') - 1) as Emp_ID from Employee
我遇到了同样的错误。我尝试运行 LOCATE,发现它为 Buttler 返回索引为 15,因为列长度为 15。
【问题讨论】: