如何查询出一个数据库中的某个表中的某个字段?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何查询出一个数据库中的某个表中的某个字段?相关的知识,希望对你有一定的参考价值。

sql 2000中,我要查询出某个表中的某个字段,但是我不字段这个表名是什么,只字段这个字段名!有办法查询出来吗?

参考技术A 直接的方法肯定是没有的,但是你可以根据字段的字面意思选中一些有可能的表,排除掉一些表,把范围缩小先,再去查。或者说,sql2000中不想Oracle,自己就有表的直观图,很方便就能找到(表不是太多的话,如果表太多,哪工作量肯定大的。) 参考技术B 那只有一个办法 把所有的表查询个遍就可以了,还有 你知道在哪个数据库吗

我可以给你做个小工具 发给你 你要是给我100分 我直接给你弄出工具来

或是给你写一个函数
参考技术C 没有办法吧,一个个表试过来,不报错的就有。

如果多个列等于 MySQL 查询中的某个值,我如何返回 true 或 false?

【中文标题】如果多个列等于 MySQL 查询中的某个值,我如何返回 true 或 false?【英文标题】:How do I return true or false if multiple columns equal a certain value in MySQL query? 【发布时间】:2011-04-15 22:37:55 【问题描述】:

我有一个单独的数据库表 (MySQL),我在上面运行一个简单的 SELECT。在此表中,我有 3 个字段,每个字段包含 3 个可能的值。在每种情况下,值都是相同的(“无”、“在线”、“物理”)。如果这些字段中的任何一个未设置为“无”,我想在结果中返回别名的真或假值。

返回结果集后,我可以轻松地在 PHP 中对此进行评估,但为了轻松地对结果进行排序,如果可能的话,我宁愿在 SELECT 中生成真/假。所以目前结果行可能如下所示:

id: 1 
trial_type_1: none
trial_type_2: online
trial_type_3: none

在这种情况下,我希望查询返回:

id: 1
trial: True

如果所有的 trial_type 字段都设置为 none,那么它将返回 False 的试验值。任何想法都非常感谢,因为我真的不知道从哪里开始,甚至不知道在网上搜索什么! :)

【问题讨论】:

【参考方案1】:

我会在其中使用 case 语句,这是一种非常灵活的方法并且非常有用。

select id, 
(CASE WHEN trial_type_1 <> 'none' OR trial_type_2 <> 'none' 
           OR trial_type_3 <> 'none'
 THEN 'True' ELSE 'False' END) as trial
FROM q3773072

但是,您也可以将其作为一个简单的逻辑运算来完成 - 这可能更接近您想要的,如下所示:

SELECT id, 
       (trial_type_1 <> 'none' OR  trial_type_2 <> 'none'  OR trial_type_3 <> 'none' )  as Trial  
from q3773072

正确的方法当然是将多个 trial_types 存储在不同的表中 - 当您开始对字段进行编号时,这是 数据库模式需要更改的线索强>。您还应该设置另一个表来定义试验类型及其定义 - 即它们是否是真正的试验。

我可能会采用后一种方法,因为您很可能会在将来的某个时候添加另一种试用类型,如果您做得不好会很痛苦..

【讨论】:

阿门! “当您开始对字段进行编号时,这表明数据库架构需要更改” Brill,谢谢理查德......在这种情况下,客户有许多产品我需要指示试用访问......目前总共只有 5 个,但是是的,我认为需要一些抽象这里! :)【参考方案2】:

这应该可行:

SELECT
    id,
    NOT (trial_type_1 IS NULL AND trial_type_2 IS NULL AND trial_type_3 IS NULL) AS trial
FROM ...

【讨论】:

假设试用值“none”在数据库中输入为NULL【参考方案3】:

你可以使用 CASE:

SELECT ID, CASE WHEN trial_type_1='none' AND trial_type_2='none' AND trial_type_3='none' THEN 'false' ELSE 'true' END
    FROM YourTable

【讨论】:

【参考方案4】:

这可能有效:

SELECT id,
       (trial_type_1 <> 'none' 
        OR trial_type_2 <> 'none' 
        OR trial_type_3 <> 'none')  AS some_not_none
FROM ...

【讨论】:

【参考方案5】:

您可以使用 MySQL IF statement:

SELECT
  id,
  IF (
    (trial_type_1 != 'none'
     OR trial_type_2 != 'none'
     OR trial_type_3 != 'none'
    ), 1, 0
  ) AS trial
FROM ...

【讨论】:

以上是关于如何查询出一个数据库中的某个表中的某个字段?的主要内容,如果未能解决你的问题,请参考以下文章

MSSQL所有表中查找某个字段中的一个数据。100分悬赏

sql 当中 如何查询某个字段中的值的第几个字符中含有相应的值

在oracle数据库如何查询某个字段在哪些表中出现过

用 NOT EXISTS来查询一个表中的数据,条件是该表中的某个字段不包含另一个子查询中的值

sql数据库中如何能让表中一个字段的数据等于一个查询中某个字段的数据

sql 如何判断表中的某个字段是不是有某个值