我正在试图做一个Excelmacros将给我在Excel中的以下function: =SQL("SELECT heading_1 FROM Table1 WHERE heading_2='foo'") 允许我使用SQL查询在我的工作簿表中search(甚至插入)数据。 这是我迄今为止所做的: Sub SQL() Dim cn As ADODB.Connection Dim rs As ADODB.Recordset strFile = ThisWorkbook.FullName strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strFile _ & ";Extended Properties=""Excel 12.0;HDR=Yes;IMEX=1"";" Set cn = CreateObject("ADODB.Connection") Set rs = CreateObject("ADODB.Recordset") cn.Open strCon strSQL = "SELECT * FROM [Sheet1$A1:G3]" rs.Open strSQL, cn Debug.Print rs.GetString End […]
现在,我有一个这样的SQL查询: SELECT X, Y FROM POINTS 它返回如下结果: XY ———- 12 3 15 2 18 12 20 29 我想要返回结果全部在一行中,像这样(适合在HTML <AREA>标签中使用): XYLIST ———- 12,3,15,2,18,12,20,29 有没有办法使用SQL来做到这一点?
在SQL Server中,如何从外键获取引用的表+列名称? 注意:不是密钥所在的表/列,而是所指的密钥。 例: 当表[T_ALV_Ref_FilterDisplay]的键[FA_MDT_ID]时。 指的是[T_AP_Ref_Customer].[MDT_ID] 比如创build这样一个约束的时候: ALTER TABLE [dbo].[T_ALV_Ref_FilterDisplay] WITH CHECK ADD CONSTRAINT [FK_T_ALV_Ref_FilterDisplay_T_AP_Ref_Customer] FOREIGN KEY([FA_MDT_ID]) REFERENCES [dbo].[T_AP_Ref_Customer] ([MDT_ID]) GO 当给定[T_ALV_Ref_FilterAnzeige].[FA_MDT_ID]作为input时,我需要获得[T_AP_Ref_Customer].[MDT_ID]
你怎么能结合2个不同的条件使用逻辑OR而不是AND? 注意: 2个条件是作为rails范围生成的,不能直接更改为where("x or y") 。 简单的例子: admins = User.where(:kind => :admin) authors = User.where(:kind => :author) 应用AND条件很容易(对于这个特殊的情况是毫无意义的): (admins.merge authors).to_sql #=> select … from … where kind = 'admin' AND kind = 'author' 但是,怎样才能生成以下具有2种不同的Arel关系的查询呢? #=> select … from … where kind = 'admin' OR kind = 'author' 看来( 根据Arel自述 ): OR运算符尚不支持 但我希望它不适用于此,并希望写下如下内容: (admins.or authors).to_sql
试图执行此更新查询时,我不断收到MySQL错误#1054: UPDATE MASTER_USER_PROFILE, TRAN_USER_BRANCH SET MASTER_USER_PROFILE.fellow=`y` WHERE MASTER_USER_PROFILE.USER_ID = TRAN_USER_BRANCH.USER_ID AND TRAN_USER_BRANCH.BRANCH_ID = 17 这可能是一些语法错误,但我已经尝试使用内部连接,而不是其他的改变,但我不断收到相同的消息: Unknown column 'y' in 'field list'
如果我使用between子句运行查询,它似乎排除结束值。 例如: select * from person where dob between '2011-01-01' and '2011-01-31' 这从“2011-01-01”到“2011-01-30”获得了dob所有结果; 跳过loggingdob是“2011-01-31”的logging。 任何人都可以解释为什么这个查询的行为是这样的,我怎么可以修改它包括logging,其中dob是'2011-01-31'? (因为用户已经select了结束date而不加1)。
在MS SQL Server中,我创build了我的脚本来使用可定制的variables: DECLARE @somevariable int SELECT @somevariable = -1 INSERT INTO foo VALUES ( @somevariable ) 然后,我将在运行时更改@somevariable的值,具体取决于我在特定情况下需要的值。 由于它位于脚本的顶部,所以很容易看清和记忆。 我如何对PostgreSQL做同样的事情? 谷歌search打开了PSQLvariables ,但这意味着它们只能在其他斜线命令中使用 ,而不是在实际的SQL中使用。 编辑:find我自己的答案,他们其实相当复杂。 sorting帖旧 – >新来跟随我的发现。 find我自己的答案进一步向下链接页面: psqlvariables的另外一个有用的特性是你可以将它们replace(“插入”)到常规的SQL语句中。 我已经尝试过了,并且遇到了问题,但是这表明我的问题毕竟与variables无关。
我试图优化我的Rails应用程序中的一些数据库查询,我有几个让我难住。 他们都在WHERE子句中使用了一个IN,并且即使恰当的索引似乎已经到位,他们也都在进行全表扫描。 例如: SELECT `user_metrics`.* FROM `user_metrics` WHERE (`user_metrics`.user_id IN (N,N,N,N,N,N,N,N,N,N,N,N)) 执行全表扫描和说明: select_type: simple type: all extra: using where possible_keys: index_user_metrics_on_user_id (which is an index on the user_id column) key: (none) key_length: (none) ref: (none) rows: 208 在使用IN语句时是不是使用了索引,还是我需要做一些不同的事情? 这里的查询是由Rails生成的,所以我可以重新审视我的关系是如何定义的,但是我想我会先从数据库级别的潜在修复开始。
我想在sqlite中声明一个variables,并在插入操作中使用它 就像在MS SQL中一样 Declare @name as varchar(10) set name = 'name' Select * from table where name = @name 例如,我将需要得到last_insert_row并在插入中使用它 我发现了一些关于绑定的东西,但是我并没有完全理解它
如何将数据从一个表复制/追加到SQL Server中具有相同模式的另一个表中? 编辑: 我的意思是说有查询 select * into table1 from table2 where 1=1 它使用与table2相同的模式和数据创buildtable1 。 是否有像这样的简短查询只将全部数据复制到已经存在的表中?