sql 查询 一个表中某几列数据

例如 select * from test1 where id=‘2’and name=全部 and age=全部
全部代表所有数据 应该怎么写?

sql查询一个表中某几列数据语法:

1、SELECT 列名称1、列名称2.....列名称n FROM 表名称 WHERE 列 运算符 值;

2、SELECT * from 表名称 where 列 运算符 值(列 运算符 值,这个可以是多个,中间用and隔开)。

解析:使用sql查询时,作为查询的筛选限制条件,只需要对有限制要求的字段使用where进行限制即可,无需对非限制要求的字段进行特别限制。

所以你的语句可以修改为"select * from test1 where id=‘2’;"就可以了。其中,你原语句中的name=全部和age=全部,属于多余的,如果不对name和age字段做任何限制的话,sql本身就是会查询全部name和age,而无需你另外加设条件。

再比如你这样写:“select * from test1;”在不加任何where条件的情况下,这个sql查询本身就是查询全部数据。而当加入id='2'之后,就限制了只能返回id值是2的某一条或者多条数据。

扩展资料:

在SQL查询表中数据时,最常用的就是有条件查询,这就需要经常用到where子句对查询的内容做某些条件限制,整理部分常用的查询条件语句的使用,如下:

通过几个例子来加深一下对上表各查询条件使用的理解:

1、查询计算机科学系全体学生的名单;

SELECT Sname FROM StudentWHERE Sdept='CS'; 

2、查询所有年龄在20岁以下的学生姓名及其年龄;

SELECT Sname,Sage FROM StudentWHERE Sage<20;

3、查询考试成绩不合格的学生的学号;

SELECT DISTINCT Sno FROM SCWHERE Grade<60;

4、查询年龄在20~23岁之间的学生的姓名、系别和年龄;

SELECT Sname,Sdept,Sage FROM Student WHERE Sage BETWEEN 20 AND 23;

5、查询年龄在20~23岁之间的学生的姓名、系别和年龄;

SELECT Sname,Sdept,Sage FROM StudentWHERE Sage NOT BETWEEN 20 AND 23;

6、查询计算机科学系(CS)、数学系(MA)和信息系(IS)学生的姓名、系别和年龄。

SELECT Sname,Ssex FROM Student WHERE Sdept IN('CS','MA','IS')。

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-02-19

所有数据可以用到sql中的通配符%,用来进行模糊查询。

用法是 select * from test1 where id=‘2’and name like '%' and age like '%',表示从test1表中查询id为2,name和age任意的数据。

1、为了对比前后查询数据,先查询表test1中的所有数据,select * from test1,如下图所示。

2、再用通配符%进行模糊查询,select * from test1 where id='2' and name like '%' and age like '%',可以看到筛选后后的结果除去了id为1的数据。

扩展资料:

sql语言中还有其它的通配符,例如“_”,它表示仅代替一个字符,从"Persons" 表中选取名字的第一个字符之后是 "eorge" 的人,SELECT * FROM 表名 WHERE 列名LIKE '_eorge'。

通配符[charlist]代表字符列中的任何单一字符,从 "Persons" 表中选取居住的城市以 "A" 或 "L" 或 "N" 开头的人,SELECT * FROM Persons WHERE City LIKE '[ALN]%'。

本回答被网友采纳
第2个回答  推荐于2017-09-16
查询表格中的指定列数据,是select 语句其中一种语法
即:select columna,columnb from table

如表格table有列 a,b,c,d
1、select * from table = select a,b,c,d from table 即显示表格式所以列
2、select a,b from table 即指定显示表格式a,b两列
第3个回答  2009-12-09
WHERE 条件语句用于筛选记录,如果是一个获得全部记录集的条件是没有必要增加的,增加了也是增加查询负担。
简洁的写法就是:SELECT * FROM test1 WHERE id = '2'
搜索的条件使用 ' 引用时,表示条件为字符串,有很多回答者贸然的认为是主键我想是错误的。
问题的另一种理解方法是显示结果记录集中的某几列。
那么正确的SQL写法是:SELECT name, age FROM test1 WHERE id = '2'
如果需要取出id,SQL写法是:SELECT id, name, age FROM test1 WHERE id = '2'
第4个回答  2009-12-09
select * from test1 where id=‘2’

难道这样不能把所有的数据读取出来么?

你既然要全部数据就应该不添加搜索条件.

添加搜索条件只是为了减少输出的数据信息.

你既然要全部信息就不需要添加搜索条件.

sql 查询 一个表中某几列数据
sql查询一个表中某几列数据语法:1、SELECT 列名称1、列名称2...列名称n FROM 表名称 WHERE 列 运算符 值;2、SELECT * from 表名称 where 列 运算符 值(列 运算符 值,这个可以是多个,中间用and隔开)。解析:使用sql查询时,作为查询的筛选限制条件,只需要对有限制要求的字段使用where进行限...

sql 查询 一个表中某几列数据
查询表格中的指定列数据,是select 语句其中一种语法 即:select columna,columnb from table 如表格table有列 a,b,c,d 1、select from table = select a,b,c,d from table 即显示表格式所以列 2、select a,b from table 即指定显示表格式a,b两列 ...

sql 查询 一个表中某几列数据
所有数据可以用到sql中的通配符%,用来进行模糊查询。用法是 select * from test1 where id=‘2’and name like '%' and age like '%',表示从test1表中查询id为2,name和age任意的数据。1、为了对比前后查询数据,先查询表test1中的所有数据,select * from test1,如下图所示。2、再用通配符%...

sql语句查询一个表的列数
根据表的ID值查找出表的列,在进行统计,即可得到该表的列数

如何利用SQL语句查看某一个表全部列或单个列的属性?
exec sp_columns 表名 --返回某个表列的信息 exec sp_help 表名 --查看某个表的所有信息 这些是系统的存储过程 例如:用SQL语句查询一个数据表所有字段的类型可以参考下面的代码:SELECT name AS column_name,TYPE_NAME(system_type_id) AS column_type,...

sql 查询一个表中所有列 只有某几列有值 其它列用通配符表示应该怎么...
sql通配符%代表所有值其用法如下:select * from table1 where column1 like '%a' 就是查询出所有column1包含a的行

sql语句,怎么统计表里有多少个列
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);ResultSet rset = stmt.executeQuery("select * from yourtable");ResultSetMetaData rsmd = rset.getMetaData() ;int columnCount = rsmd.getColumnCount();columnCount 就是ResultSet的总列数。

sql 查询 一个表中某几列数据
strSQL = "Select A,B,C,D From 数据表名 Where 查询条件"A,B,C,D 就是需要查询的字段名(就是你说的列),需要几个就列出几个。

想用一条SQL语句查找一个数据表中几列数据都不相同的数据
ORACLE数据库:select distinct a,b,c ,d from table;或者可以 使用GROUP BY SELECT a,b,c ,d from table GROUP BY a,b,c ,d 如果想知道这些数据各有多少个,SELECT a,b,c ,d,count(1) from table GROUP BY a,b,c ,d ...

SQL 得到表的 某行某列的值(如 表的第三行第一列的值)
要查询第一列比较麻烦,如果知道第一列的列名就容易一些。假设第一列的列名是col,并且表有主键id,那么查询第三行的第一列的值可以这么写:select top 1 col from tablename where id not in (select top 2 id from tablename)

相似回答