SELECT * FROM t1 WHERE ROW(1,2) = (SELECT column1, column2 FROM t2);
这句是什么意思
这句是什么意思
解决方案 »
- 求一套 免费可自定义的 进销存
- 求Discuz_X 1.5RC GBK版 跟 最土网utf8版本的用户整合
- 用php 如何来实现asp.net中的Global.asax页面的功能
- 知网系列caj nk kdh系列文档 服务器端转化为flash 求助!
- 传智博客php
- 为什么静态文件加入smarty中就错位
- 老大们啊 PHP-GTK有没有中文网站啊 用PHP开发软件一类的程序究竟怎么开发啊 ??我只会作网站 除了网站 作别的怎么弄啊?
- 关于sourceforge.net项目主页问题
- phpstorm自动提示,能不能像sublime一样方便
- 数组递减计算差值 填充新数组
- 有关下载的问题,高手请进。
- 新手解惑
SELECT * FROM t1 WHERE ROW(1,2) = (SELECT column1, column2 FROM t2);
如果在表t2的一个行中,column1=1并且column2=2,则查询结果均为TRUE。表达式(1,2)和ROW(1,2)有时被称为行构造符。两者是等同的,在其它的语境中,也是合法的。
例如,以下两个语句在语义上是等同的(但是目前只有第二个语句可以被优化): SELECT * FROM t1 WHERE (column1,column2) = (1,1);
SELECT * FROM t1 WHERE column1 = 1 AND column2 = 1;行构造符通常用于与对能返回两个或两个以上列的子查询进行比较。例如,以下查询可以答复请求,“在表t1中查找同时也存在于表t2中的所有的行”:
SELECT column1,column2,column3
FROM t1
WHERE (column1,column2,column3) IN (SELECT column1,column2,column3 FROM t2);