select syscall需要3个filedescriptor集,用于监视fds的可读/可写性以及filedescriptor上的“ exceptions”。
我的选择手册页对exceptfd
描述符集的描述不多。 它是干什么用的; 可以并且会在文件描述符上通知什么样的异常?
我假设这对于描述符类型可以是不同的……无论是TCP套接字,管道,tty等)。 没有人能提供有关select
可以报告各种描述符的错误的更多信息吗?
据我所知,从关系数据库理论来看,没有order by
子句的select
语句应考虑为没有特定顺序。 但是实际上,在SQL Server和Oracle中(我已经在这两个平台上进行了测试),如果我多次从没有order by
子句的表中查询,我总是得到相同顺序的结果。 可以依靠这种行为吗? 有人可以帮忙解释一下吗?
我试图基于同一表中的ProductID在新列中获取“现金”,“支票”和“信用卡”总计。
表-付款
+-----------+------------+---------------+--------+
| ProductID | SaleDate | PaymentMethod | Amount |
+-----------+------------+---------------+--------+
| 3 | 2012-02-10 | Cash | 10 |
| 3 | 2012-02-10 | Cash | 10 |
| 3 | 2012-02-10 | Check | 15 |
| 3 | 2012-02-10 | Credit Card | 25 |
| 4 | 2012-02-10 | Cash | 5 |
| 4 | 2012-02-10 | Check | 6 |
| 4 | 2012-02-10 | Credit Card | 7 |
+-----------+------------+---------------+--------+
期望的输出-
+------------+------+-------+-------------+-------+
| ProductID | Cash | Check | Credit Card | Total |
+------------+------+-------+-------------+-------+
| 3 | 20 | 15 | 25 | 60 |
| 4 | 5 | 6 | 7 | 18 |
+------------+------+-------+-------------+-------+
我尝试过左加入同一张桌子,但没有成功。 任何建议,将不胜感激。 谢谢。
不成功和不完整的尝试-
SELECT P.ProductID, Sum( PCash.Amount ) AS 'Cash', SUM( PCheck.Amount ) AS 'Check', SUM( PCredit.Amount) AS 'Credit Card'
FROM Payments AS P
LEFT JOIN Payments AS PCash ON P.ProductID = PCash.ProductID AND PCash.PaymentMethod = 'Cash'
LEFT JOIN Payments AS PCheck ON P.ProductID = PCheck.ProductID AND PCheck.PaymentMethod = 'Check'
LEFT JOIN Payments AS PCredit ON P.ProductID = PCredit.ProductID AND PCredit.PaymentMethod = 'Credit'
WHERE P.SaleDate = '2012-02-10' GROUP BY ProductID;
我已经写了一个MySQL查询,但是它似乎没有用,因为结果为空。 我的代码有什么错误吗?
$result = mysql_query(
"SELECT user_id
FROM wp_usermeta
WHERE
(meta_key = 'first_name' AND meta_value = '$us_name') AND
(meta_key = 'yearofpassing' AND meta_value = '$us_yearselect') AND
(meta_key = 'u_city' AND meta_value = '$us_reg') AND
(meta_key = 'us_course' AND meta_value = '$us_course')"
);
我在程序中到处都有几个文本框,它们接受Control + A快捷键以“默认”和“不编码”选择整个文本。
我不知道我必须在此处提供哪些其他信息来为所有人启用它,因为我发现这些文本框之间绝对没有区别。 它们都是简单的拖放文本框。
注意:我不是在谈论这段代码:
if (e.Control && e.KeyCode == Keys.A)
{
textBox1.SelectAll();
}
我要默认选择...还是有更改文本框属性的方法,以便文本框接受所有默认的Windows快捷方式?
其他所有内容(Control + Z
、Control + X
、Control + C
、Control + V
)默认情况下均有效! 为什么不选择Ctrl+A
?
更新:默认情况下接受Ctrl+A
的文本框是带掩码的文本框,而不是常规的文本框。 那时我使用的是.NET 2.0。 但是我想原来的问题是其他问题,因为我可以看到Ctrl+A
在.NET 2.0代码中默认情况下工作正常。
假设我有一个带有以下字段的mySQL表(用户):
userid
gender
region
age
ethnicity
income
我希望能够根据用户输入的数目返回总记录数。 此外,他们还将提供其他标准。
在最简单的示例中,他们可能要求提供1000条记录,其中600条记录的性别应为“男”,而400条记录的性别应为“女”。 这很简单。
现在,再往前走一步。 假设他们现在要指定Region:
GENDER
Male: 600 records
Female: 400 records
REGION
North: 100 records
South: 200 records
East: 300 records
West: 400 records
同样,只应返回1000条记录,但最后必须有600位男性,400位女性,100位北方人,200位南方人,300位东方人和400位西方人。
我知道这不是有效的语法,但是使用伪mySQL代码,有望说明我正在尝试执行的操作:
(SELECT * FROM users WHERE gender = 'Male' LIMIT 600
UNION
SELECT * FROM users WHERE gender = 'Female' LIMIT 400)
INTERSECT
(SELECT * FROM users WHERE region = 'North' LIMIT 100
UNION
SELECT * FROM users WHERE region = 'South' LIMIT 200
UNION
SELECT * FROM users WHERE region = 'East' LIMIT 300
UNION
SELECT * FROM users WHERE region = 'West' LIMIT 400)
请注意,我不是在寻找一次性查询。 记录的总数和每个条件内的记录数将根据用户的输入不断变化。 因此,我正在尝试提出一种可以反复使用的通用解决方案,而不是硬编码的解决方案。
为了使事情变得更复杂,现在添加更多条件。 每个组也可能有年龄,种族和收入,并有各自固定的记录数量,上面附加了其他代码:
INTERSECT
(SELECT * FROM users WHERE age >= 18 and age <= 24 LIMIT 300
UNION
SELECT * FROM users WHERE age >= 25 and age <= 36 LIMIT 200
UNION
SELECT * FROM users WHERE age >= 37 and age <= 54 LIMIT 200
UNION
SELECT * FROM users WHERE age >= 55 LIMIT 300)
INTERSECT
etc.
我不确定这是否可以在一个查询中编写,或者是否需要多个语句和迭代。
我尝试了以下选择:
SELECT (id,name) FROM v_groups vg
inner join people2v_groups p2vg on vg.id = p2vg.v_group_id
where p2vg.people_id =0;
并且我得到以下错误列引用“ id”是不明确的。
问题是,如果我尝试相同的选择,但我只要求(name),而不要求id,它也可以工作。我对此并不陌生,也许我缺少明显的东西。 有什么建议?
谢谢。
如果要满足特定条件,我想防止更改选择框。 这样做似乎无效:
$('#my_select').bind('change', function(ev) {
if(my_condition)
{
ev.preventDefault();
return false;
}
});
我猜这是因为到此为止所选的选项已经更改。
还有什么其他方式可以做到这一点?
我想使用纯JavaScript将选项动态添加到选择中。 我可以找到的所有内容都涉及JQuery或尝试动态创建选择。 我能找到的最接近的东西是用Javascript中的选项动态添加输入类型选择,而后者则是后者,这是我发现的唯一不涉及JQuery的东西。 尽管我确实尝试过像这样使用它:
daySelect = document.getElementById('daySelect');
daySelect.innerHTML += "<option'>Hello world</option'>";
alert(daySelect.innerHTML)
完成此操作后,选择没有任何变化,警报提示了我
HELLO WORLD</option'>
很抱歉,这很简单,但是我在javascript和网络编程方面还是一个新手。 感谢您的协助。
编辑:所以我尝试了这样的给定建议。
daySelect = document.getElementById('daySelect');
myOption = document.createElement("option");
myOption.text = "Hello World";
myOption.value = "Hello World";
daySelect.appendChild(myOption);
这根本没有改变页面中的选择。 知道为什么吗? 我确实检查了代码是否正在运行并发出警报。
编辑:这个想法确实奏效,只是事实证明它没有在下拉列表中显示值。 我不知道为什么,但是我可以弄清楚。
我有一个特定的字符串,例如“ 123abcd”,但是我不知道表的名称,甚至不知道SQL Server数据库中表内的列的名称。 我想通过选择找到它并显示相关字符串的所有列,所以我想知道以下内容:
select * from Database.dbo.* where * like '%123abcd%'
出于明显的原因,它不起作用,但是有一种简单的方法可以创建select语句来执行类似的操作?
嗨,有人可以告诉我下面的代码有什么问题吗?
Selected =“已选择”不适用于我。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<select id="tstselect" name="tstselect" onchange="showselected(this.value);">
<option value="0" >0</option>
<option value="1" >1</option>
<option value="2" >2</option>
<option value="3" selected="selected">3</option>
</select>
提前致谢
我正在尝试抓取以下所有选中的所有内容,并用逗号将它们分开。 代码如下:
<select id="ps-type" name="ps-type" multiple="multiple" size="5">
<option>Residential - Wall Insulation</option>
<option>Residential - Attic /Crawl Space Insulation</option>
<option>Residential - Foundation Insulation</option>
<option>Residential - Exterior Roof System</option>
<option>Commercial - Wall Insulation</option>
<option>Commercial - Air Barrier System (Walltite)</option>
<option>Commercial - Roof System</option>
</select>
我正在寻找的结果如下:
住宅-墙壁绝缘,商业-墙壁绝缘,...
我有一个选择语句,我想在其中选择条件
IFNULL(field_a,field_a,feild_b)
以便它检查字段a如果a为空,则选择将是字段b
那可能吗 ?
我有一个包含4列A,B,C和D的数据表,因此A,B和C列的值的特定组合在数据表中是唯一的。
目标:针对A,B和C列的给定值组合,查找D列的值。
我想遍历数据行集应该做到这一点。 有没有一种方法可以使用Datatable.Select()完成此操作? 更具体地说-我可以在选择过滤器中有多个条件吗,即逻辑AND运算符连接A,B和C列的每个条件。
我正在就以下问题寻求帮助:我有两张桌子Table_1
列为itemid
、location1
、location2
Table_1
列为itemid
、location1
、location2
、location3
我想将数据从Table_1
(仅quantity
列)复制到Table_2
(放入location1
列)中。 两个表中的itemid
是相同的(Table_1
具有重复的项目ID),这就是我要复制到新表并将所有数量都保留在一行中且每个位置都作为一列的原因。 我正在使用以下查询,但无法正常工作
INSERT INTO
Table_2(location1)
(
SELECT qty
FROM Table_1
WHERE locationid = 1 AND Table_1.locationid = Table_2.locationid
)
对于SQL语法,我是菜鸟。
我的桌子上当然有很多行和列:P可以这样说:
AAA BBB CCC DDD
-----------------------
Row1 | 1 A D X
Row2 | 2 B C X
Row3 | 3 C D Z
现在,我想创建一个高级选择语句,将其组合起来(此处为伪SQLish):
select 'Test1', * from TABLE Where CCC='D' AND DDD='X'
select 'Test2', * from TABLE Where CCC<>'D' AND DDD='X'
输出为:
Test1, 1, A, D, X
Test2, 2, B, C, X
我如何将这两个选择语句组合成一个不错的选择语句?
如果我像下面那样复杂化SQL,它会起作用吗(因为我自己的SQL语句包含一个exist语句)? 我只想知道如何组合选择,然后尝试将其应用于我的更高级的SQL。
select 'Test1', * from TABLE Where CCC='D' AND DDD='X' AND exists(select ...)
select 'Test2', * from TABLE Where CCC<>'D' AND DDD='X' AND exists(select ...)
我的REAL SQL语句是这样的:
select Status, * from WorkItems t1
where exists (select 1 from workitems t2 where t1.TextField01=t2.TextField01 AND (BoolField05=1) )
AND TimeStamp=(select max(t2.TimeStamp) from workitems t2 where t2.TextField01=t1.TextField01)
AND TimeStamp>'2009-02-12 18:00:00'
这给了我一个结果。 但是我想将其与该选择语句的副本结合在一起,并在其末尾添加AND,并且“状态”字段将使用类似“删除”的字符串进行更改。
select 'DELETED', * from WorkItems t1
where exists (select 1 from workitems t2 where t1.TextField01=t2.TextField01 AND (BoolField05=1) )
AND TimeStamp=(select max(t2.TimeStamp) from workitems t2 where t2.TextField01=t1.TextField01)
AND TimeStamp>'2009-02-12 18:00:00'
AND NOT (BoolField05=1)
我指的是BOOK
答案:
如何从SQL Server的值列表中选择
在Oracle中如何做类似的事情?
我在此页面上看到了使用BOOK
的其他答案,尽管该方法在技术上可行,但我不想在我的情况下使用。
因此,我想保留某种语法,该语法或多或少看起来像是逗号分隔的值列表。
有关BOOK
答案的更新:
我有一张桌子:
CREATE TABLE "BOOK"
( "BOOK_ID" NUMBER(38,0)
)
我使用此脚本,但它不会在BOOK
表中插入任何行:
create type number_tab is table of number;
INSERT INTO BOOK (
BOOK_ID
)
SELECT A.NOTEBOOK_ID FROM
(select column_value AS NOTEBOOK_ID from table (number_tab(1,2,3,4,5,6))) A
;
脚本输出:
TYPE number_tab compiled
Warning: execution completed with warning
但是,如果我使用此脚本,则会在BOOK
表中插入新行:
INSERT INTO BOOK (
BOOK_ID
)
SELECT A.NOTEBOOK_ID FROM
(SELECT (LEVEL-1)+1 AS NOTEBOOK_ID FROM DUAL CONNECT BY LEVEL<=6) A
;
如何从mysql表的过去日期到当前日期选择数据? 例如,选择从2009年1月1日到当前日期?
我的“ datetime”列为datetime日期类型。 请帮忙,谢谢
编辑:
如果说我想从2009年1月1日开始获取每日数据,该如何编写查询? 使用计数和函数之间?
这里完全没有想法,可能需要一个简单的解决方案。
基本上我想要的查询是:
SELECT * FROM table WHERE id = 3,4
我只想选择ID为3和4的行,或者命名为“ andy”和“ paul”
非常感谢您的回答
从大型mysql表中选择随机行的快速方法是什么?
我正在使用php,但是我对任何解决方案都感兴趣,即使它是另一种语言也是如此。