Sql-哪个字母不在名称中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sql-哪个字母不在名称中相关的知识,希望对你有一定的参考价值。
我还有另一个问题。
我只是sql的初学者。我需要找出字母的哪个字母不在名称列表中作为第一个字符。
我不知道要使用哪个功能?
要查找特定字母,我可以使用like运算符。但是我不知道该用什么来查找不在列表中的字母。...
我必须找到电子邮件地址的不同首字母的查询是:
select left(EmailAddress,1), count(left(EmailAddress,1)
from Customers
order by left(EmailAdress,1)
[没有以U开头的电子邮件地址。但是我可以使用哪个查询来获得该结果?
答案
您需要一张包含所有字母的表格。您可以使用UNION ALL
和少FROM
的SELECT
的临时派生表。然后,一种方法是使用相关子查询和NOT EXISTS
检查不在任何电子邮件地址开头的字母。
SELECT l.letter
FROM (SELECT 'a' letter
UNION ALL
SELECT 'b' letter
...
SELECT 'y' letter
UNION ALL
SELECT 'z' letter) l
WHERE NOT EXISTS (SELECT *
FROM customers c
WHERE left(lower(emailaddress), 1) = l.letter);
另一答案
您可以使用介于65(A)和70(F)之间的第一个字符的ascii:
SELECT * FROM Customers WHERE ASCII(UPPER(LEFT(EmailAdress,1))) NOT BETWEEN 65 AND 70;
以上是关于Sql-哪个字母不在名称中的主要内容,如果未能解决你的问题,请参考以下文章