MySQL - 显示所有排列? [英] MySQL - Show All Permutations?

查看:89
本文介绍了MySQL - 显示所有排列?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

表1:

  Id MyFK f_name l_name 
============= ==============
1 100 John Doe
2 100 Little Timmy

表2:

  Id MyFK item price 
======= ====================
1 100汽车200
2 100自行车100

在MySQL中,我如何生成这样的表:

  Id MyFK f_name l_name item price 
========================================= =
1 100 John Doe Car 200
1 100 John Doe Bike 100
2 100 Little Timmy Car 200
2 100小小的自行车100


解决方案

  CREATE TABLE person 
SELECT 1 AS Id ,100 AS MyFK,'John'AS f_name,'Doe'AS l_name UNION
SELECT 2,100,'Little','Timmy';

CREATE TABLE车辆
SELECT 1 AS Id,100 AS MyFK,'Car'AS item,200 AS price UNION
SELECT 2,100,'Bike',100;

SELECT p.Id,p.MyFK,p.f_name,p.l_name,v.item,v.price
FROM person p
CROSS JOIN vehicle v;


Table1:

Id   MyFK   f_name   l_name
===========================
1    100    John     Doe
2    100    Little   Timmy

Table2:

Id   MyFK   item     price
===========================
1    100    Car      200
2    100    Bike     100

In MySQL, how do I produce a table like this:

Id   MyFK   f_name   l_name  item  price
========================================
1    100    John     Doe     Car   200
1    100    John     Doe     Bike  100
2    100    Little   Timmy   Car   200
2    100    Little   Timmy   Bike  100

解决方案

CREATE TABLE person
SELECT 1 AS Id, 100 AS MyFK, 'John' AS f_name, 'Doe' AS l_name UNION
SELECT 2, 100, 'Little', 'Timmy';

CREATE TABLE vehicle
SELECT 1 AS Id, 100 AS MyFK, 'Car' AS item, 200 AS price UNION
SELECT 2, 100, 'Bike', 100;

SELECT p.Id, p.MyFK, p.f_name, p.l_name, v.item, v.price
FROM person p
CROSS JOIN vehicle v;

这篇关于MySQL - 显示所有排列?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆