基本上我有一个包含很多城市名称的大型 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/