09 lip 2020, 21:05
09 lip 2020, 22:43
> select * from channels;
+----+---------+---------+
| id | name | surname |
+----+---------+---------+
| 1 | abc | sotona |
| 2 | abc | sotona |
| 3 | Abc | sotona |
| 4 | ABc | sotona |
| 5 | aBc | sotona |
| 6 | aBC | sotona |
| 7 | Lucifer | sotona |
+----+---------+---------+
> select * from channels where name like "%abc%";
+----+------+---------+
| id | name | surname |
+----+------+---------+
| 1 | abc | sotona |
| 2 | abc | sotona |
| 3 | Abc | sotona |
| 4 | ABc | sotona |
| 5 | aBc | sotona |
| 6 | aBC | sotona |
+----+------+---------+
6 rows in set (0.001 sec)
> CREATE TABLE channels (
-> id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
-> name VARCHAR(66) NOT NULL,
-> surname VARCHAR(66) NOT NULL
-> )
-> ;
> show create table channels;
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| channels | CREATE TABLE `channels` (
`id` int(6) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(66) NOT NULL,
`surname` varchar(66) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1
10 lip 2020, 09:04
10 lip 2020, 10:49
> alter table channels CHARSET=utf8;
Query OK, 0 rows affected (0.008 sec)
Records: 0 Duplicates: 0 Warnings: 0
MariaDB [kuro]> show create table channels;
+----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| channels | CREATE TABLE `channels` (
`id` int(6) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(66) CHARACTER SET latin1 NOT NULL,
`surname` varchar(66) CHARACTER SET latin1 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 |
+----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.000 sec)
MariaDB [kuro]> select * from channels where name like "%abc%";
+----+------+---------+
| id | name | surname |
+----+------+---------+
| 1 | abc | sotona |
| 2 | abc | sotona |
| 3 | Abc | sotona |
| 4 | ABc | sotona |
| 5 | aBc | sotona |
| 6 | aBC | sotona |
+----+------+---------+
6 rows in set (0.001 sec)
10 lip 2020, 11:16
> show create table channels;
+----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| channels | CREATE TABLE `channels` (
`id` int(6) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(66) NOT NULL,
`surname` varchar(66) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 |
+----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.000 sec)
MariaDB [kuro]> select * from channels where name like "%abc%"; ;
+----+------+---------+
| id | name | surname |
+----+------+---------+
| 2 | abc | sotona |
| 3 | Abc | sotona |
| 4 | AbC | sotona |
| 5 | ABC | sotona |
| 6 | aBC | sotona |
| 7 | aBc | sotona |
+----+------+---------+
6 rows in set (0.000 sec)
10 lip 2020, 11:18
10 lip 2020, 16:28
mysql> select vmssid from videos where vmssid like '%A5BC5%';
+----------------------------------------------------------------------------------------------------------------------------------+
| vmssid |
+----------------------------------------------------------------------------------------------------------------------------------+
| 17715143a5bc5b59088b63ce634blablablaovajdioidjajeizbacena15cb03a6 |
+----------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> select user_login from wp_users where user_login like '%MBM%';
+------------+
| user_login |
+------------+
| mbm |
+------------+
1 row in set (0.00 sec)
# mysql --help
mysql Ver 14.14 Distrib 5.7.29-32, for debian-linux-gnu (x86_64) using 7.0
Copyright (c) 2009-2020 Percona LLC and/or its affiliates
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
10 lip 2020, 16:32
damir je napisao/la:Sry, trebao sam bolje postaviti pitanje.
Imam table oko 50MB i default charset je utf8. Pa sam probao:
ALTER TABLE `channels` COLLATE utf8_bin;
Al ni to nije radilo. Kasnije sam ovo iskopao na mariadb blogu:
SELECT * FROM `channels` WHERE CONVERT(`name` USING utf8mb4) LIKE '%Abc%'
I to radi!
ALTER TABLE channels CONVERT TO CHARACTER SET utf8mb4
SELECT * FROM channels WHERE name like '%Abc%'
10 lip 2020, 16:59
iweb je napisao/la:damir je napisao/la:Sry, trebao sam bolje postaviti pitanje.
Imam table oko 50MB i default charset je utf8. Pa sam probao:
ALTER TABLE `channels` COLLATE utf8_bin;
Al ni to nije radilo. Kasnije sam ovo iskopao na mariadb blogu:
SELECT * FROM `channels` WHERE CONVERT(`name` USING utf8mb4) LIKE '%Abc%'
I to radi!
e pa e, tu ti može biti problem ako nisi dobro konvertirao, a da je prije bilo pohranjeno u nekom charsetu koji ti to nije podržavao (tipa _bin charseta, eventualno - ali nisam siguran kakvo je stanje s _bin charsetima, da budem iskren)
probaj
- Kod:
ALTER TABLE channels CONVERT TO CHARACTER SET utf8mb4
i onda pokrenuti
- Kod:
SELECT * FROM channels WHERE name like '%Abc%'
10 lip 2020, 19:38