sql - 如何使用 SQL 选择数据长度大于给定长度的列
问题描述
我有一个包含特定列和行的表。我想选择数据长度超过 7 的列。
例如:表有列
Name Address PhoneNumber
AAA AAAAAAAA 12345678
BBBBB BBBBBBB 47854
CCC FFFF 76643
这里的“地址”和“电话号码”列的数据长度超过 7。所以它应该显示,
地址电话
号码
作为结果。这是针对特定表的。这里我还不知道 Address 和 PhoneNumber 是数据长度大于 7 的列。只有从查询结果中我才能找到它。
SELECT <<all_columns>> from table where length(columns)>7
是我的输入要求。
'Where' 子句中的 LENGTH 或 LEN 函数提供了仅给出一个特定列名的选项
而不是LENGTH(COL_NAME)
,我需要选项作为LENGTH(*)) > 7
输入 LENGTH(<> 或类似的东西。
怎样才能做到这一点?
解决方案
所以 HAVING 可能是你想要使用的子句。显然,您可以扩展以包括所有列并增加拥有量。看到这个:
SELECT
Name,
Address,
Phonenumber,
LEN(Address) AS AddyLength
FROM
yourTables
GROUP BY
Name,
Address,
Phonenumber,
HAVING
LEN(Address)>7
推荐阅读
- apache - 使用 htaccess 对所有流量强制使用 HTTPS 和 www
- java - 发布到 Amazon SNS 失败时会发生什么?
- sql - 当名称的一部分是 SQL 附加多个表
- apache-kafka - Kafka - 使用许多分区的密钥特定订阅
- c++ - 从 ParaView 构建自定义 Qt 应用程序示例时出错
- javascript - JSXGraph 加倍显示轴标签
- php - 是否可以在作曲家中验证供应商文件夹的完整性?
- java - Spring Boot JPA 获取表元数据
- tfs - TFS 持续集成/部署版本号
- javascript - 使用时刻时区添加日期但不更新