mdsk.net
当前位置:首页 >> sElECt * From A whErE iD=123 AnD((y='truE' AnD ... >>

sElECt * From A whErE iD=123 AnD((y='truE' AnD ...

不知道你的字段值是怎样设置的, 感觉你这样查,逻辑就有些混乱。 可以改成以下语句试一下: select * from a where id =123 and y=true and x='0'union select * from a where id =123 and y =false and x='1'

select * from a where id=123 and y XOR x

select * fro m a left join (select * from b where conf=1) b on a.id=b.id;

就是机制问题。 使用exists,A表的数据只会出现一次。 使用下面的join A表的数据可能会出现多次。(在A.zrcid=B.id并且B.ID重复)

是的,exists就是对比,对比A,B表时,要一致时才存在相同的数值,这样exists才为true,B表中必须有对应的ID,没有,就不一致了

sql select id from a where id=(select id from b where id=(select id from c where name='aaaaa')) 改成inner join sql select a.id from a inner join b on a.id=b.id inner join c on b.id=c.id where c.name='aaaaa'

sql语句改成这样子: SELECT a.id AS aid, b.id AS bid FROM list AS a,type AS b WHERE a.key=1 and a.type_id=b.id order by a.id desc LIMIT 0,3 数据出来之后直接按字段名来得到数据,aid或者bid

子查询中select count(1) as num from A where A.ID = B.ID 就是统计B表和A表用ID连接的行数 子查询的行数=0,就可以实现从B表中排除A表数据

有错,首先sql语句中字符串是用单引号('')的,所以adminID='lrl'第二,一般来说密码(adminpwd)也是字符串类型,所以adminpwd后面的也需要加单引号,如果是数值类型那可以不必加:select * from admin where adminID='lrl' and adminpwd='123'

-- A 和 B 表 有主外键关联吗?-- 示例:select* from A left join B on A.a=B.b WHERE A.id = B.id and A.status='2' and B.name='a'

网站首页 | 网站地图
All rights reserved Powered by www.mdsk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com