我有一个包含两个字段的表(国家和ISO代码):
Table1
field1 - e.g. 'Afghanistan' (without quotes)
field2 - e.g. 'AF'(without quotes)
Run Code Online (Sandbox Code Playgroud)
在某些行中,第二个字段在开头和/或结尾处有空格,这会影响查询.
Table1
field1 - e.g. 'Afghanistan' (without quotes)
field2 - e.g. ' AF' (without quotes but with that space in front)
Run Code Online (Sandbox Code Playgroud)
是否有一种方法(在SQL中)通过表并查找/替换field2中的空格?
我想有一个像这样的mysql查询:
select <second word in text> word, count(*) from table group by word;
Run Code Online (Sandbox Code Playgroud)
mysql中的所有正则表达式示例用于查询文本是否与表达式匹配,但不用于从表达式中提取文本.有这样的语法吗?
我正在研究比较字符串的例程,但为了提高效率,我需要删除所有不是字母或数字的字符.
我现在正在使用多种REPLACE功能,但也许有更快更好的解决方案?
我正在尝试替换MySQL字段中的一堆字符.我知道REPLACE函数,但一次只能替换一个字符串.我在手册中看不到任何适当的功能.
我可以一次更换或删除多个字符串吗?例如,我需要用破折号替换空格并删除其他标点符号.
我有一个表,其中包含许多行,其中包含一个包含URL的列.URL的格式如下:
http://one.example1.com:9999/dotFile.com
我希望替换该列中的所有匹配项,http://example2.com/dotFile.com同时保留以下内容后的所有内容:9999.我在regexp_matches和regexp_replace上找到了一些文档,但我无法完全理解它.
我有一个MySQL数据库,我有一个查询:
SELECT `id`, `originaltext` FROM `source` WHERE `originaltext` regexp '[0-9][0-9]'
Run Code Online (Sandbox Code Playgroud)
这将检测所有包含2位数字的原始文本.
我需要MySQL将这些数字作为字段返回,所以我可以进一步操作它们.
理想情况下,如果我可以添加额外的标准,应该> 20将是伟大的,但我也可以单独做.
我有排序/订单的问题,而不是像我需要的那样工作.
SELECT `proc` FROM `table` ORDER BY `proc` DESC;
Run Code Online (Sandbox Code Playgroud)
结果:
80.0 proc
70.0 proc
60.0 proc
50.0 proc
40.0 proc
200.0 proc
20.0 proc
190.0 proc
180.0 proc
170.0 proc
160.0 proc
150.0 proc
140.0 proc
130.0 proc
120.0 proc
110.0 proc
100.0 proc
Run Code Online (Sandbox Code Playgroud)
我需要的是:
200.0 proc
190.0 proc
180.0 proc
170.0 proc
160.0 proc
150.0 proc
140.0 proc
130.0 proc
120.0 proc
110.0 proc
100.0 proc
90.0 proc
80.0 proc
70.0 proc
60.0 proc
50.0 proc
40.0 proc
20.0 …Run Code Online (Sandbox Code Playgroud) 我如何在MySQL查询中具有与Regex.Replace函数相同的行为(例如在.NET/C#中)?
我需要这个,因为和很多人一样,我想计算一个字段中的单词数量.但是,我对以下答案不满意(在该网站上多次给出):
SELECT LENGTH(name) - LENGTH(REPLACE(name, ' ', '') +1 FROM table
Run Code Online (Sandbox Code Playgroud)
因为当两个单词之间有多个空格时,它不会给出好的结果.
顺便说一句,我认为Regex.Replace功能可能很有趣,所以欢迎所有好主意!
如何通过查询替换mysql列中的值,如Column is options及其类型varchar(255)
从
id options
1 A|10|B|20|C|30
2 A|Positive|B|Negative
Run Code Online (Sandbox Code Playgroud)
至
id options
1 A|10,B|20,C|30
2 A|Positive,B|Negative
Run Code Online (Sandbox Code Playgroud)
我是这样做的php.
<?php
$str = "A|10|B|20|C|30";
$arr = explode("|",$str);
$newArr = array();
for($i=0;$i<count($arr);$i+=2){
if($arr[$i] && $arr[$i+1]){
$newArr[] = $arr[$i]."|".$arr[$i+1];
}
}
echo "Before:".$str."\n";
echo "After :".implode(",",$newArr);
?>
Run Code Online (Sandbox Code Playgroud)
因此,我想在MySQL中执行此操作而不是PHP.
我找不到MySQL的这个问题,所以这里是:
我需要将字符串中的所有双倍或更多空格修剪为1个单独空格.
例如:"快速布朗狐狸"应该是:"快速布朗狐狸"
函数REPLACE(str,"","")只删除双空格,但是当有更多空格时会留下多个空格...
mysql ×9
regex ×5
string ×4
replace ×3
sql ×3
word-count ×2
alphanumeric ×1
field ×1
php ×1
postgresql ×1