我要疯了...
我想生成一个需要通过循环的表数组,但我不希望包含表“ClientData”。但是,无论我做什么,它都会不断出现在数组中...
我试过这个:
SELECT DISTINCT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME IN ('QuoteID') AND
COLUMN_NAME NOT REGEXP '\\([^\\)]*ClientData.*\\)'
AND TABLE_SCHEMA='$db';
我试过这个:
SELECT DISTINCT TABLE_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA='$db' OR
`COLUMN_NAME` LIKE 'Training%' OR
`COLUMN_NAME` LIKE 'Development%' OR
`COLUMN_NAME` LIKE 'Hardware%' OR
`COLUMN_NAME` LIKE 'MobilityL%'
在第二种情况下,我尝试使用 LIKE 函数仅拉取我需要的表,但它仍然拉取 ClientData。我什至添加了:
`COLUMN_NAME` NOT LIKE 'ClientData'
'Client%'的每一个变体......
我花光了。将不胜感激任何人有任何帮助。
虚拟现实,
你为我打破了大坝,谢谢!由于某种原因,我被 Column_name 所困扰,并且应该一直在思考 Table_name。尴尬...
我抄袭了您的 Table_name != 'ClientData' 并用 Table_name 替换了 Column_Name 过滤器,它非常完美。这是决赛:
SELECT DISTINCT TABLE_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA='$db' OR
TABLE_NAME LIKE 'Training%' OR
TABLE_NAME LIKE 'Development%' OR
TABLE_NAME LIKE 'Hardware%' OR
TABLE_NAME LIKE 'MobilityL%' AND
TABLE_NAME != 'ClientData'
仅使用TABLE_NAME != 'ClientData' 不是一个足够严格的过滤器,因为我还需要过滤掉一些其他表,但这是完美的。再次感谢。我的连续编码已经超过 50 小时以赶上最后期限(需要退出志愿服务!),这让我离睡眠更近了大约 2 小时。