mysql查询数据 某个字段不重复

mysql查询数据 某个字段不重复,第1张

//查询表中的数据 同时某个字段不重复 并且排序

首先做一下查询某个字段不重复(使用group by);

select * from 表名 where group by 不重复的字段名;

在做一下排序,我之前有发过一次排序,这次就做一个简单排序

order by 字段a=0 desc, 字段a desc,字段b desc (a字段等于0在最前面,a字段除了0之外的都为倒叙,b字段倒叙);

这样组合起来就好了

select * from 表名 where group by 不重复的字段名 order by 字段a=0 desc, 字段a desc,字段b desc;

mysqli_result::fetch_fields

mysqli_fetch_fields

(PHP 5)

mysqli_result::fetch_fields -- mysqli_fetch_fields — Returns an array of objects representing the fields in a result set

<?php

$link = mysqli_connect("localhost", "my_user", "my_password", "world")

/* check connection */

if (mysqli_connect_errno()) {

printf("Connect failed: %s\n", mysqli_connect_error())

exit()

}

$query = "SELECT * from yourtablename"

if ($result = mysqli_query($link, $query)) {

/* Get field information for all columns */

$finfo = mysqli_fetch_fields($result)

foreach ($finfo as $val) {

printf("Name:     %s\n", $val->name)

printf("Table:    %s\n", $val->table)

printf("max. Len: %d\n", $val->max_length)

printf("Flags:    %d\n", $val->flags)

printf("Type:     %d\n\n", $val->type)

}

mysqli_free_result($result)

}

/* close connection */

mysqli_close($link)

?>

mysql安装成功后可以看到已经存在mysql、information_schema和test这个几个数据库,information_schema库中有一个名为COLUMNS的表,这个表中记录了数据库中所有表的字段信息。知道这个表后,获取任意表的字段就只需要一条select语句即可。例如:

select COLUMN_NAME from information_schema.COLUMNS where table_name = 'your_table_name'

上述的做法有一点问题,如果多个数据库中存在你想要查询的表名,那么查询的结果会包括全部的字段信息。通过DESC information_schema.COLUMNS可以看到该表中列名为TABLE_SCHEMA是记录数据库名,因此下面的写法更为严格

select COLUMN_NAME from information_schema.COLUMNS where table_name = 'your_table_name' and table_schema = 'your_db_name'


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6105473.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-14
下一篇 2023-03-14

发表评论

登录后才能评论

评论列表(0条)

保存