我有trx 表
id name respond
1 john DETIL!518050381482|202003|SRI RAHAYU | R1|450|6784|6866|0|0|0|0|047421CB6333E1FB10624B8BD3462256|2020-03-31 20:19:12|37881|2750|0|0|ASLI:asialink|LISTRIK|"Informasi Hubungi Call Center 123 Atau Hub PLN Terdekat :" . Powered by Bukopinet.|123 |21d94ad2fb7127e7ccbc5928c22996f1*!93116677|93116677|79
2 dana DETIL!518030384979|202003|MUSJARI | R1|900|450|15769|0|0|0|0|047421CB6333E546FEB23EA60FE279C5|2020-03-31 20:53:28|462570|2750|0|0|ASLI:asialink|LISTRIK|"Informasi Hubungi Call Center 123 Atau Hub PLN Terdekat :" . Powered by Bukopinet.|123 |700ab80876c7d0f0e3ea5621c29988e3*!89065543|89065543|79
3 toni DETIL!518030384770|202003|KASBUN | R1|450|15502|15603|0|0|0|0|047421CB6333E552C7AC8A082139A502|2020-03-31 20:54:17|48227|2750|0|0|ASLI:asialink|LISTRIK|"Informasi Hubungi Call Center 123 Atau Hub PLN Terdekat :" . Powered by Bukopinet.|123 |ec47a682782daa193cd3b9e8a241664e*!88781316|88781316|79
我想计算列上有多少450值(在R1之后(响应。
我使用了select count(*) from trx where respond like '%|450|%'
但它显示为3,因为id 2的值为|450|,但我只期望R1 之后的值
应该是2
这就是您想要的吗?
where respond like '%R1|450|%'
这将适用于您的样本数据。
使用正则表达式可以更加灵活:
where respond regex 'R1[^|]*\|450\|'
该短语为:'R1'
后接除'|'
之外的0到n个字符,后接'|450|'
。