mysql—两个值共享公共字符的sql条件

f45qwnt8  于 2021-06-18  发布在  Mysql
关注(0)|答案(2)|浏览(405)

我试图创建一个查询,列出staffid、staffname和staffdob,但只列出名字和姓氏以相同字母开头的员工。所以我将stafffirst和stafflast作为单独的列,将它们连接在一起。我不会定制staffid和staffdob。我希望它返回员工的名字,比如adam apple=a apple,因此输出如下:

staffID | staffName | staffDOB
------------------------------
1       | A Apple   | 12/10/99
....    | ....      | ....

所有列都在同一个表“n\u staff”中。我使用的是heidisql,我相信它使用的是mysql。我知道如何获取每一列的数据,尽管它选择了名字和姓氏的第一个字母,并对它们进行了比较,这让我很困惑,因为我要找的不是一个特定的字母,而是索引[0]的两个表中的任何一个共同的字母。
迄今为止:

SELECT staffID FROM N_Staff,
SELECT staffFirst, staffLast AS staffName
FROM N_Staff WHERE ... , --perhaps should be using LEFT ?
SELECT staffDOB from N_Staff;
q8l4jmvw

q8l4jmvw1#

怎么样:

SELECT staffID, CONCAT(LEFT(staffFirst,1), ' ', staffLast) AS staffName, staffDOB
FROM N_Staff
WHERE LEFT(staffFirst,1) = LEFT(staffLast,1)
c0vxltue

c0vxltue2#

使用此选项:

SELECT * FROM NS_WORDS; 
    mani
    nikhil
    sugandh
    mining
    _lkdnsad
    _lkdndsadnjas
    _lk
    _ja
    _ls
    _lsa
    nikhil nikhil
    nikhil name

SELECT * FROM NS_WORDS
where not( to_char(SUBSTR(a,1,1))=to_char(substr(a,instr(a,' ',1,1),1))); 

output:
nikhil nikhil
nikhil name

您的位置将是:

where not( to_char(SUBSTR(staffName ,1,1))=to_char(substr(staffName 
,instr(staffName ,' ',1,1),1)));

相关问题