出现在select语句中的select语句,称为子查询或内查询。
外部的select查询语句,称为主查询或外查询。
测试数据比较多,放在我的个人博客上了。
浏览器中打开链接:http://www.itsoku.com/article/196
mysql中执行里面的 javacode2018_employees库 部分的脚本。
成功创建 javacode2018_employees 库及5张表,如下:
运行最后一条结果如下:
in,any,some,all分别是子查询的关键词之一。
in :in常用于where表达式中,其作用是查询某个范围内的数据
any和some一样 : 可以与=、>、>=、<、<=、>结合起来使用,分别表示等于、大于、大于等于、小于、小于等于、不等于其中的任何一个数据。
all :可以与=、>、>=、<、<=、>结合使用,分别表示等于、大于、大于等于、小于、小于等于、不等于其中的其中的所有数据。
下文中会经常用到这些关键字。
运行结果:
not in的情况下,子查询中列的值为NULL的时候,外查询的结果为空。
建议:建表是,列不允许为空。
select id, name from users where id in (1, 2, 3, 4) // 按id查select id, name from users where name in ("kay", "meimei") // 按用户名查
查出来有就是存在,没有就是不存在!
获取最新数据就会显示。如下参考:
1.打开电脑,打开mysql数据库,点击数据库,在右上角输入查询,点击新查询下面的zd查询。如图。
2.然后可以通过gmt_create从crew_1中输入SELECT*,表中的所有记录都将按时间排序,如图所示。
3.如果需要获得按时间排序的表中的第一条记录,请输入SELECT*fromcrew_1orderbygmt_createdesclimit0,1,如图所示。
4.如果您需要获得第五个记录,请输入SELECT*fromcrew_1orderbygmt_createdesclimit4,1,如下所示。
5.如果需要获取1001记录,只需将limit4,1更改为limit1000,1。如果需要获取n条记录,在查询语句中添加limitn-1,1,如图所示。
6.如果需要获取表中的前n条记录,则更改为限制n,如图所示。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)