我可以在 MySQL 中“隐藏”列吗?
Posted
技术标签:
【中文标题】我可以在 MySQL 中“隐藏”列吗?【英文标题】:Can I "Hide" Columns In MySQL? 【发布时间】:2014-06-29 13:47:05 【问题描述】: con = New OleDbConnection(cs)
con.Open()
cmd = New OleDbCommand("Select DISTINCT DesignationDate as [Date], DayNumber as [DN] from employeedesignation where employeeID = '" & EmployeeID3.Text & "' order by DayNumber asc", con)
Dim myDA As OleDbDataAdapter = New OleDbDataAdapter(cmd)
Dim myDataSet As DataSet = New DataSet()
myDA.Fill(myDataSet, "EmployeeDesignation")
dgridempinfo_4.DataSource = myDataSet.Tables("EmployeeDesignation").DefaultView
con.Close()
这段代码只填写了我的数据网格“dgridempinfo_4”,并显示了 2 列,DATE 和 DN。
我可以通过datagrid属性或代码隐藏列,但是我可以查询使得DN不会显示在语句本身中吗?
【问题讨论】:
您能否澄清一下 - 如果您不想在输出中包含它,为什么还要在查询中包含它? 所以我可以使用 order by。可能很原始,但这是我所知道的。 :( 别担心!您无需在输出列表中包含一列即可对其进行排序。因此,将您的查询更改为:Select DISTINCT DesignationDate as [Date] from employeedesignation where employeeID = '" & EmployeeID3.Text & "' order by DayNumber asc
是的,我试过一次,这个错误对我来说是新的“ORDER BY 子句(DayNumber)与 DISTINCT 冲突。” :(
如果是 Access,那么看看这个问题:***.com/questions/6734584/…。它建议使用 group by 而不是 distinct。它应该适用于您的场景。如果您不想处理查询,Matthew 的建议也很好。
【参考方案1】:
如果您想在查询中包含该列,可能会执行额外的数据提取,但不想在您的视图中显示它,那么您始终可以在填充数据集后删除您想要隐藏的列:
table(0).Columns.Remove("Foo")
您也可以指定索引而不是名称,但请确保您的索引正确!:
table(0).Columns.Remove(0)
【讨论】:
以上是关于我可以在 MySQL 中“隐藏”列吗?的主要内容,如果未能解决你的问题,请参考以下文章
可以在 Spark 中写入 MEDIUMTEXT 类型的 MySQL 列吗?