mysql - 从同一列中选择多个值

标签 mysql select inner-join

SELECT b_lastname, b_firstname, cscart_profile_fields_data.value AS VAT
FROM cscart_user_profiles
INNER JOIN cscart_profile_fields_data ON cscart_profile_fields_data.object_id = cscart_user_profiles.user_id
WHERE cscart_profile_fields_data.field_id =64
AND cscart_profile_fields_data.object_type = 'P'

我使用上面的代码,以便从 cscart_user_profiles 表中获取值,同时也从 cscart_profile_fields_data 表中获取值,尤其是值字段。 我想做的是从同一查询中的值字段获取不同的值,只需更改 field_id

最佳答案

如果我理解你的问题:

SELECT b_lastname, b_firstname, cscart_profile_fields_data.value AS VAT
FROM cscart_user_profiles
INNER JOIN cscart_profile_fields_data ON cscart_profile_fields_data.object_id = cscart_user_profiles.user_id
WHERE cscart_profile_fields_data.field_id IN (64, ...)
AND cscart_profile_fields_data.object_type = 'P'

此查询返回与 WHERE IN 条件中的参数一样多的行

或者:

SELECT b_lastname, b_firstname, GROUP_CONCAT(cscart_profile_fields_data.value SEPARATOR ';') AS VAT
FROM cscart_user_profiles
INNER JOIN cscart_profile_fields_data ON cscart_profile_fields_data.object_id = cscart_user_profiles.user_id
WHERE cscart_profile_fields_data.field_id IN (64, ...)
AND cscart_profile_fields_data.object_type = 'P'
GROUP BY b_lastname, b_firstname

以上查询返回一行,其中 VAT 列中包含多个值,以 ; 分隔字符(如 CSV 文件)

关于mysql - 从同一列中选择多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31278899/

相关文章:

php连接microsoft access并使用密码

mysql - 错误 #1045 - phpmyadmin 中用户 'root' @'localhost' 的访问被拒绝

mysql内部从多个表多次连接同一个表和同一列

php - 在 php 中放置 session 检查后无法显示表格

mysql - 在所有表中搜索特定子字符串

javascript - 使用 jQuery 按变量值选择数组

javascript - 使用 jQuery 检查 html 选择的值

mysql - Youtube 视频建议

mysql - 如何: SQL Query - INNER JOIN with LIMIT 1 on the secondary table?

mysql - 需要帮助内连接多个表并使用 MySQL 中的最后一个值行