我在我的表中有一个 LINK 字段,有些行有链接,有些行没有。
我想选择所有 LINK 存在的行(长度大于 X 个字符)。
我应该如何编写代码呢?
我在我的表中有一个 LINK 字段,有些行有链接,有些行没有。
我想选择所有 LINK 存在的行(长度大于 X 个字符)。
我应该如何编写代码呢?
这样怎么样:
SELECT * FROM sometable WHERE CHAR_LENGTH(LINK) > 1
这是MySql字符串函数页面(5.0)。
请注意,我选择了CHAR_LENGTH
而不是LENGTH
,因为如果数据中有多字节字符,您可能真正关心的是有多少个字符,而不是它们占用了多少存储字节。因此,在上面的示例中,如果LINK是一个单独的双字节字符,则不会返回该行-但使用LENGTH
时会返回该行。
请注意,如果LINK
为NULL
,则CHAR_LENGTH(LINK)
的结果也将是NULL
,因此该行将不匹配。
select * from [tbl] where [link] is not null and len([link]) > 1
针对MySQL用户:
LENGTH([link]) > 1
尝试:
SELECT
*
FROM
YourTable
WHERE
CHAR_LENGTH(Link) > x
如果有人想在 Oracle 中找到并来到这里(就像我一样),语法是:
select length(FIELD) from TABLE
以防万一 ;)