SELECT ALL id FROM person WHERE id > id - 1.这个可以查询表中所有id么
时间: 2024-05-22 22:11:29 浏览: 58
这个查询语句实际上是没有意义的,因为 `id > id - 1` 恒成立,即对于任意一条记录,都会满足这个条件,所以这个查询会返回表中所有id。但是这并不是一种可靠的查询方式,因为它并没有对数据进行过滤或排序,也没有限制返回的行数,因此可能会导致查询结果过于庞大或不可控。如果你想要查询表中所有id,可以使用简单的 `SELECT id FROM person` 语句来实现。
相关问题
SELECT person.fullname FROM person WHERE - NOTEXISTS( - SELECT - * - FROM - location - WHERE NOTEXISTS(SELECT*FROMitineraryWHEREitinerary.p_id=person.idANDitinerary.loc_id=location.id)) ORDERBY person.fullname;
这是一条可以实现查询人员表去过所有地点的人员姓名,查询结果按人员姓名顺序排序的 SQL 查询语句。以下是格式化后的代码:
```
SELECT person.fullname
FROM person
WHERE NOT EXISTS (
SELECT *
FROM location
WHERE NOT EXISTS (
SELECT *
FROM itinerary
WHERE itinerary.p_id = person.id AND itinerary.loc_id = location.id
)
)
ORDER BY person.fullname;
```
该查询语句使用了两个嵌套的 `NOT EXISTS` 子查询,第一个子查询用于找到去过所有地点的人员,第二个子查询用于在去过所有地点的人员中筛选出去过每个地点的人员。同时使用了 `JOIN` 操作,将 `person`、`location` 和 `itinerary` 表连接起来。最后使用 `ORDER BY` 子句按照人员姓名排序。
where ipm.delect_type is null and exists (select 1 from plan_order_item oi where oi.plan_id =ipm.plan_id and exists (select 1 from sm.ass_person_privileges pp where pp.room_id=oi.facility_id and pp.user_id=#{userId})) SQL中where条件这样写可以不
这是一个SQL查询语句,意思是查询ipm表中delect_type为空的记录,并且存在一个子查询,子查询中查询plan_order_item表中plan_id等于ipm表中plan_id的记录,并且存在另一个子查询,子查询中查询sm.ass_person_privileges表中room_id等于plan_order_item表中facility_id并且user_id等于某个值的记录。具体查询的目的和结果需要根据具体情况来确定。
阅读全文