mysql 中如何把查询出来的一列数据当成条件(字段)来使用?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 中如何把查询出来的一列数据当成条件(字段)来使用?相关的知识,希望对你有一定的参考价值。

假设表名叫table 表中有一个字段叫id
用伪sql举个例子:
select id '别名' from table 这样就查询出了字段名叫 别名 的一列数据
那如何实现这样的查询 select * from table where 别名 > 1;
也就是 select * from table where (select id from table) > 1;
(就这样写的话,子查询的返回数超过1了)
所以就是 能不能把查询出来的这一列数据当成一个平常的字段来使用,
比如 id > 1 是可以的 那要怎样实现 别名 > 1 这样的,,,
能办到吗,,,求大神帮忙!

1、打开mysql软件,需要查询表中msg这一列,只需将查询语句写成 “select msg from log1”。

2、需要统计表中有多少条数据,可以使用下图所示的语法,即可查看表数据的条目数量。

3、然后接下来就是查询msg这一列添加了一个别名为“m”提出条件。

4、最后,添加多个别名,别名的具体位置在列名的后面,这样就可以当成条件来使用了。

参考技术A

1、打开php的编辑器,然后新建一个文件,写上注释内容。#mysql中where条件的使用。

2、新建一个函数use_where。

3、连接数据库,填写连接需要的信息内容。

4、填写查询条件的sql语句,用where关键字来实现,例如:select * from test1 where id=1。

5、执行sql语句,并将结果处理输出来。

6、调用这个函数。use_where();。

7、在本地进行测试。

参考技术B 回答

一、单表查询1.带条件的查询基本语法:select * from +表名称 +where 条件;1)范围查询:eg:where 字段 between 10 and 100;2)模糊查询eg:where 字段 like\'%不确定%\'备注:%代表多个字符,_下划线代表一个字符,^a代表以a为开头的数据,a$代表以a为结尾的数据,[abc]匹配所包含的任意一个字符。2.多条件查询备注:当and和or同时使用时,and优先级高于or。如果想要优先带or的条件,对带or部分条件带括号即可。3.排序基本语法:order by 字段。备注:默认是升序,ASC升序,DESC降序限制记录数:limit 1004.聚合函数count():统计记录数avg():平均数max():最大值min():最小值sum():求和5.分组

参考技术C 可以对子查询做一个排序啊,然后只查寻一个,选出最小的id,比如:
select * from table where (select id from table order by id asc limit 1) > 1;追问

谢谢,很有意思的思路,,,以前没试过!刚在贴吧问大神有答案了,,,

本回答被提问者采纳
参考技术D 没看懂你说的是啥,说了半天,其实就是select * from table where id>1 而已追答

你说的什么别名什么的都不是实质的东西

也没用看到哪里需要子集

追问

是啊,就是 select * from table where id > 1 只是这个id是查询出来的字段,而不是表中的字段!

追答

那就这样写 select id as 别名,* from table where id>1

就可以了

sql查询语句如何能把不符合条件的数据也一并查出来

例如:表A数据有9条,表B数据有10条,where A.条件=B.条件,当他们关联起来一起查询的时候,如何把多出的1条也查出来

select * from b left join a on a.条件=b.条件

以多的那张表作为left join 左边的那个,这里也就是b表
参考技术A 使用left join
select * from b left join a on A.条件=B.条件
b表会全部显示出来,多出的一条,B表内容有数据,A表相应的字段是空(null)
参考技术B where是条件判断,只能通过条件筛选。
多的数据不行查出来,除非b中9条数据和a一样。
参考技术C select * from B left join A on A.条件=B.条件 参考技术D where A.条件(+)=B.条件

以上是关于mysql 中如何把查询出来的一列数据当成条件(字段)来使用?的主要内容,如果未能解决你的问题,请参考以下文章

c#如何查询数据库中表的一列数据并赋值给一个数组

sql 如何将查出来的一列用逗号拼接

怎样一个表中的2个查询结果合并到一个表中的两列

如何将SQL查询出来的一列数据赋值,执行存储过程

请问如何用C或C++把mysql数据库中的某一列数据读出来,然后把这一列数据存放在数组中?急用!!!谢谢!

Mysql 子查询怎么写?