数据库A,列名:aa为操作任务,列名bb为操作步骤 用PGsql查看“操作步骤”列,检索关键字为“拉开”、“断开”字眼, 并且在“拉开”“断开”字眼的后面没有“检查”的字眼,
时间: 2023-10-03 18:06:59 浏览: 36
可以使用下面的 SQL 语句来实现:
```
SELECT bb FROM A WHERE bb LIKE '%拉开%' OR bb LIKE '%断开%' AND bb NOT LIKE '%检查%';
```
这个语句会在数据库 A 的操作步骤列中查找包含关键字“拉开”或“断开”的记录,并且这些记录中不包含关键字“检查”。最后,它会返回符合条件的操作步骤。
相关问题
数据库A,列名:aa为操作任务,列名bb为操作步骤 用PGsql查看“操作步骤”列,检索关键字为“拉开”、“断开”字眼, 且该字眼后面有“检查”的字眼,
可以使用以下的SQL语句来查询符合条件的记录:
```sql
SELECT * FROM A WHERE bb LIKE '%拉开%' AND bb LIKE '%检查%' OR bb LIKE '%断开%' AND bb LIKE '%检查%';
```
其中,`A`是数据库中表格的名称,`bb`是操作步骤列的名称。`LIKE`是用来进行模糊匹配的操作符,`%`用来表示任意数量的字符。这条语句会查询出所有`bb`列中包含“拉开”或“断开”关键字,且后面跟着“检查”的记录。
数据库A,列名:aa为操作任务,列名bb为操作步骤,XX为任意数 用PGsql查看同一个“操作任务”的“操作步骤”中, 当执行上一项为XX开关、拉开XX刀闸, 下一项检查XX开关在分闸、XX刀闸在拉开, 其中检查的XX要和断开或拉开的XX名称要一致
以下是PGsql的查询语句:
```
SELECT t1.aa, t1.bb
FROM 数据库A t1
JOIN 数据库A t2 ON t1.aa = t2.aa
JOIN 数据库A t3 ON t1.aa = t3.aa
WHERE t1.bb LIKE '%XX开关、拉开XX刀闸%'
AND t2.bb LIKE '%检查XX开关在分闸、XX刀闸在拉开%'
AND SUBSTRING(t1.bb FROM '%XX开关、拉开%' FOR 2) = SUBSTRING(t2.bb FROM '%在分闸%' FOR 2)
AND SUBSTRING(t1.bb FROM '%XX开关、拉开%' FOR 2) = SUBSTRING(t2.bb FROM '%在拉开%' FOR 2)
AND SUBSTRING(t2.bb FROM '%检查%' FOR 2) = SUBSTRING(t3.bb FROM '%在分闸%' FOR 2)
AND SUBSTRING(t2.bb FROM '%检查%' FOR 2) = SUBSTRING(t3.bb FROM '%在拉开%' FOR 2);
```
请注意,在查询语句中,我将“XX”替换为实际的XX名称。另外,如果对查询语句中的任何部分不确定,请提供更多的数据和信息,以便我可以更好地帮助您。
阅读全文