gpt4 book ai didi

mysql - MySQL 内连接与条件的更好方法

转载 作者:行者123 更新时间:2023-11-29 09:30:50 25 4
gpt4 key购买 nike

我们有两个表,一个是 emp 表,其中包含 idname 列。另一个表是 Designation,其中包含 iddesignation 列。

I want to retrieve emp.id, emp.name, Designation.designation for all the employees having a name starting with letter 'A';

我编写了以下 MySQL 查询

select emp.name,emp.id,d.designation from 
emp e inner join Designation d on e.id = d.id
where Left(e.name,1) = 'A';

有没有更好的方法来解决这个问题?嵌套查询?工会之类的?

最佳答案

连接是执行此操作的推荐方法。
您可以使用查询来检索列designation:

select e.name, e.id, 
(select d.designation from Designation d where e.id = d.id) designation
from emp e
where Left(e.name,1) = 'A';

仅当 2 个表具有 1 对 1 关系时。
但我认为这并不是效率或可读性的改进。
还有条件:

where Left(e.name,1) = 'A'

可以用运算符LIKE编写:

where e.name LIKE 'A%'

关于mysql - MySQL 内连接与条件的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58786230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com