mysql - 在数据库中选择奇怪的语法

标签 mysql sql

基本上我有一个包含很多城市名称的大型 MySQL 数据库表,其中 90% 是有效的条目,但其中一些是以......无效的方式编写的。
例如,有效的方法是 juste "CITYNAME"但其中一些类似于 "(CITY NAME)(COUNTRY)"或只是 "(CITY NAME)"所以我只想SELECT 所有条目没有写成有效的方式。 我不知道这是否足够具体,请随时向我询问一些精确的元素。 请帮助我不知道如何构建我的 SQL 查询。

CREATE TABLE cities(
   name    VARCHAR(50) NOT NULL PRIMARY KEY
);
INSERT INTO cities(name) VALUES ('ORLANDO');
INSERT INTO cities(name) VALUES ('(CHARLOTTE)');
INSERT INTO cities(name) VALUES ('(PHOENIX)(USA)');
INSERT INTO cities(name) VALUES ('AUSTIN(USA)');
INSERT INTO cities(name) VALUES ('TENNESSEE NASHVILLE');

下面是我必须处理的不同类型条目的一些示例。
我不知道如何描述所需的输出,那只是一个奇怪的语法列表,有或没有括号。
重点是删除那些奇怪的条目,但我必须在这样做之前SELECT它们。我也不会是删除它们的人,只需SELECT

最佳答案

可能的输出解决方案:

select * from cities where instr(name,')') or instr(name,'(');
(CHARLOTTE)
(PHOENIX)(USA)

这会在任何地方查找任何包含“(”或“)”的内容。

关于mysql - 在数据库中选择奇怪的语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49152976/

相关文章:

php - 如何使我的导出文件导出更大的表

javascript - 在 php 中解释 json 并将其传递给 mysql 时遇到问题

c# - 使用 dapper.net 返回 mysql LAST_INSERT_ID() 时强制转换无效

sql - 查询返回正确的结果,存储过程没有。需要第二双眼睛

sql - Oracle:从字符串中删除前4个字符

sql - PyQt - 直接使用 SQL 和 QSqlTableModel

MySQL 连接、分组依据以及按选择排序分组

php - MySql查询优化方法

php - 无法从 php 中的数据库中删除行

android - 从外部数据库获取所有行 - 好主意吗?