1、首先打开MYSQL的管理工具,新建一个test表,并且在表中插入两个字段。
2、接下来在Editplus编辑器中创建一个PHP文件,然后进行数据库连接,并且选择要 *** 作的数据库。
3、然后通过mysql_query方法执行一个Insert的插入语句。
4、执行完毕以后,我们回到数据库管理工具中,这个时候你会发现插入的中文乱码了。
5、接下来我们在PHP文件中通过mysql_query执行一个set names utf8语句即可完成 *** 作。
我这里给你一个 类似的例子, 表结构也就是简单的 分类, 明细
要查询每个分类下面, 随机明细 几条的情况
你可以参考参考
测试表与测试数据。CREATE TABLE test_order_by_rand (group_code varchar(10), name varchar(10));
INSERT INTO test_order_by_rand VALUES('水果', '苹果');
INSERT INTO test_order_by_rand VALUES('水果', '梨子');
INSERT INTO test_order_by_rand VALUES('水果', '香蕉');
INSERT INTO test_order_by_rand VALUES('水果', '桃子');
INSERT INTO test_order_by_rand VALUES('水果', '菠萝');
INSERT INTO test_order_by_rand VALUES('蔬菜', '萝卜');
INSERT INTO test_order_by_rand VALUES('蔬菜', '白菜');
INSERT INTO test_order_by_rand VALUES('蔬菜', '蘑菇');
INSERT INTO test_order_by_rand VALUES('蔬菜', '毛豆');
INSERT INTO test_order_by_rand VALUES('蔬菜', '青椒');
INSERT INTO test_order_by_rand VALUES('坚果', '核桃');
INSERT INTO test_order_by_rand VALUES('坚果', '榛子');
INSERT INTO test_order_by_rand VALUES('坚果', '杏仁');
INSERT INTO test_order_by_rand VALUES('坚果', '花生');
INSERT INTO test_order_by_rand VALUES('坚果', '开心果');
预期目标, 按照 group_code 进行分组, 每个分组内, 进行随机获取数据SELECT
group_code,
name
FROM
(
SELECT
CASE
WHEN @cn != group_code THEN @rownum:= 1
ELSE @rownum:= @rownum + 1
END AS No,
group_code,
@cn := group_code AS group_code,
name
FROM
(SELECT @rownum:=0) r,
(SELECT @cn:= '') p,
(SELECT FROM test_order_by_rand order by group_code, rand()) tmp
) subQuery
WHERE
No <= 3
ORDER BY
group_code;
这里套了2层子查询, 其中的
(SELECT FROM test_order_by_rand order by group_code, rand()) tmp
用于实现, 针对每一个 group_code 进行分组, 下属的 name 的数据, 进行随机排序
其中的
() subQuery
用于实现, 针对 前面的 按 group_code 分组, name 随机排序后的数据。
模拟一个 row_number() over(partition by group_code) 的处理
最后的 No <= 3 用于限制, 每一个 group_code 下面, 显示多少行
执行结果:
+------------+--------+
| group_code | name |
+------------+--------+
| 水果 | 苹果 |
| 水果 | 香蕉 |
| 水果 | 梨子 |
| 蔬菜 | 青椒 |
| 蔬菜 | 白菜 |
| 蔬菜 | 蘑菇 |
| 坚果 | 核桃 |
| 坚果 | 花生 |
| 坚果 | 开心果 |
+------------+--------+
9 rows in set (000 sec)
以上就是关于如何在PHP中获取MYSQL数据库返回的数据的行数全部的内容,包括:如何在PHP中获取MYSQL数据库返回的数据的行数、mysql数据库中随机抽取该分类下的几条数据怎么写、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)